FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour show /hide a bitmap on a get
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
show /hide a bitmap on a get
Posted: Fri Feb 24, 2023 09:19 AM
I have this tget control

When the cSeek is empty it must not show any button
when the user insert any digit it must show the button and the bitmap
How resolve it?
Code (fw): Select all Collapse
  #include "FiveWin.ch"
 
function Main()        
 
   local oDlg,oGet       
   local cSeek:= Space(100)

   DEFINE DIALOG oDlg TITLE "Test"        
 
   @ 1, 1 GET oGet VAR cSeek SIZE 50,10 PIXEL OF oDlg  ;
                     BITMAP ".\bitmaps\elimina.bmp";
                      ACTION (cSeek    := Space( 100 ),;
                                      oGet:refresh()) ;
                  
                       oGet:lBtnTransparent :=.t.
                       oGet:bChange  := { ||ChangeGetBtn(oGet,cseek) }
                      oGet:bKeyDown := { ||ChangeGetBtn(oGet,cseek)  }
                       ACTIVATE DIALOG oDlg CENTERED  ;
                       ON INIT ( oGet:cBmpName:="",oGet:oBtn:hide())
return nil
//----------------------------------------------------------------------//
Function ChangeGetBtn(oGet,cseek)
   IF EMPTY( cseek )
      oGet:oBtn:hide()
      oGet:cBmpName:=""
     * oGet:Refresh()
   ELSE
      oGet:oBtn:show()
      oGet:cBmpName:=".\bitmaps\elimina.bmp"
      oGet:Refresh()
   ENDIF
return .t.
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 1344
Joined: Wed Nov 16, 2005 09:14 PM
Re: show /hide a bitmap on a get
Posted: Fri Feb 24, 2023 11:44 AM
Silvio:
Mira si te sirve asi:
Code (fw): Select all Collapse
 #include "FiveWin.ch"
 
function Main()        
 
   local oDlg,oGet      
   local cSeek:= Space(100)

   DEFINE DIALOG oDlg TITLE "Test"        
 
   @ 1, 1 GET oGet VAR cSeek SIZE 50,10 PIXEL OF oDlg  ;
                     BITMAP "..\bitmaps\delete.bmp";
                      ACTION (cSeek    := Space( 100 ),;
                                      oGet:refresh()) ;
                 
                       oGet:lBtnTransparent :=.t.
                       oGet:bChange  := { ||ChangeGetBtn(oGet,cseek) }
                       ACTIVATE DIALOG oDlg CENTERED  ;
                       ON INIT ( oGet:cBmpName:="",oGet:oBtn:hide())
return nil
//----------------------------------------------------------------------//
Function ChangeGetBtn(oGet,cseek)
oGet:assign()
   IF EMPTY( oGet:cText )
      oGet:oBtn:hide()
   ELSE
      oGet:oBtn:show()
      oGet:cBmpName:="..\bitmaps\delete.bmp"
   ENDIF
return .t.
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: show /hide a bitmap on a get
Posted: Fri Feb 24, 2023 12:06 PM

thanks

LET ME WRITE ONLY ONE cR

Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 514
Joined: Sun Oct 16, 2005 03:32 AM
Re: show /hide a bitmap on a get
Posted: Sat Feb 25, 2023 03:45 AM
Code (fw): Select all Collapse
#include "FiveWin.ch"
 
function Main()        
 
   local oDlg,oGet      
   local cSeek:= Space(100)

   DEFINE DIALOG oDlg TITLE "Test"        
 
       @ 1, 1 GET oGet VAR cSeek SIZE 50,10 PIXEL OF oDlg  ;
                 BITMAP "d:\fwh\bitmaps\delete.bmp" ;
                 ACTION ( cSeek := Space( 100 ),;
                               ChangeGetBtn(oGet,cseek),;    // ************* //
                               oGet:SetPos(0))    // ************* //

       oGet:lBtnTransparent :=.t.
       oGet:bChange  := { || oGet:Assign() , ChangeGetBtn(oGet,cseek) }
       oGet:bKeyDown := { || oGet:Assign() , ChangeGetBtn(oGet,cseek)  }

       @ 50,10 BUTTON "Exit" OF oDlg ACTION oDlg:End() PIXEL

   ACTIVATE DIALOG oDlg CENTERED  ;
      ON INIT ( oGet:cBmpName:="" , oGet:oBtn:hide())
return nil
//----------------------------------------------------------------------//

Function ChangeGetBtn(oGet,cseek)

   oGet:Assign()  // ************* //

   IF EMPTY( cseek )
      oGet:oBtn:hide()
      oGet:cBmpName:=""
   ELSE
      oGet:oBtn:show()
      oGet:cBmpName:="d:\fwh\bitmaps\delete.bmp"
   ENDIF

return .t.
 //----------------------------------------------------------------------//

Saludos,



Carlos Gallego



*** FWH-25.12, xHarbour 1.3.1 Build 20241008, Borland C++7.70, PellesC, ADS 11.1***

Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: show /hide a bitmap on a get
Posted: Sun Feb 26, 2023 05:15 PM
Cgallegoa wrote:
Code (fw): Select all Collapse
#include "FiveWin.ch"
 
function Main()        
 
   local oDlg,oGet      
   local cSeek:= Space(100)

   DEFINE DIALOG oDlg TITLE "Test"        
 
       @ 1, 1 GET oGet VAR cSeek SIZE 50,10 PIXEL OF oDlg  ;
                 BITMAP "d:\fwh\bitmaps\delete.bmp" ;
                 ACTION ( cSeek := Space( 100 ),;
                               ChangeGetBtn(oGet,cseek),;    // ************* //
                               oGet:SetPos(0))    // ************* //

       oGet:lBtnTransparent :=.t.
       oGet:bChange  := { || oGet:Assign() , ChangeGetBtn(oGet,cseek) }
       oGet:bKeyDown := { || oGet:Assign() , ChangeGetBtn(oGet,cseek)  }

       @ 50,10 BUTTON "Exit" OF oDlg ACTION oDlg:End() PIXEL

   ACTIVATE DIALOG oDlg CENTERED  ;
      ON INIT ( oGet:cBmpName:="" , oGet:oBtn:hide())
return nil
//----------------------------------------------------------------------//

Function ChangeGetBtn(oGet,cseek)

   oGet:Assign()  // ************* //

   IF EMPTY( cseek )
      oGet:oBtn:hide()
      oGet:cBmpName:=""
   ELSE
      oGet:oBtn:show()
      oGet:cBmpName:="d:\fwh\bitmaps\delete.bmp"
   ENDIF

return .t.
 //----------------------------------------------------------------------//
It run ok onky when I write a text after I delete it init from ++ space


1) write a text




2) press the button and the text is deleted



3) I insert a new text , but it init from position 0 + 4



then if I delete also , the text init from 0 position + 8
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 514
Joined: Sun Oct 16, 2005 03:32 AM
Re: show /hide a bitmap on a get
Posted: Mon Feb 27, 2023 08:43 PM
Silvio:
Code (fw): Select all Collapse
     @ 1, 1 GET oGet VAR cSeek SIZE 50,10 PIXEL OF oDlg  ;
                 BITMAP "d:\fwh\bitmaps\delete.bmp" ;
                 ACTION ( cSeek := Space( 100 ),;
                               ChangeGetBtn(oGet,cseek),;    // ************* //
                               oGet:SetPos(0))    // ***  oGet:SetPos(0) puts de curson in pos 0 after click on Del bitmap *** //
Working ok on xHarbour and FWH 20.07

Saludos,



Carlos Gallego



*** FWH-25.12, xHarbour 1.3.1 Build 20241008, Borland C++7.70, PellesC, ADS 11.1***

Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: show /hide a bitmap on a get
Posted: Tue Feb 28, 2023 09:06 AM
Cgallegoa wrote:Silvio:
Code (fw): Select all Collapse
     @ 1, 1 GET oGet VAR cSeek SIZE 50,10 PIXEL OF oDlg  ;
                 BITMAP "d:\fwh\bitmaps\delete.bmp" ;
                 ACTION ( cSeek := Space( 100 ),;
                               ChangeGetBtn(oGet,cseek),;    // ************* //
                               oGet:SetPos(0))    // ***  oGet:SetPos(0) puts de curson in pos 0 after click on Del bitmap *** //
Working ok on xHarbour and FWH 20.07
now run ok only I have a xbrowse search and before not run ok
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com

Continue the discussion