FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour How to make password GET viewable on demand?
Posts: 1096
Joined: Fri Oct 28, 2005 02:27 AM
How to make password GET viewable on demand?
Posted: Mon May 13, 2024 04:24 AM

Is it possible to make a password GET field viewable if user click to view password?

Something similar to what we see in most web forms

TIA

FWH 11.08/FWH 19.12

BCC5.82/BCC7.3

xHarbour/Harbour
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: How to make password GET viewable on demand?
Posted: Mon May 13, 2024 04:49 AM
Code (fw): Select all Collapse
oGet:lShowPassword := .T. / .F.
to display or hide password
Code (fw): Select all Collapse
oGet:lShowPassword := !oGet:lShowPassword
to toggle display of password

Here is a sample
Code (fw): Select all Collapse
#include "fivewin.ch"

function Main()

   local oDlg, oGet
   local cPw   := Space( 20 )

   DEFINE DIALOG oDlg SIZE 300,200 PIXEL TRUEPIXEL
   @ 40,40 GET oGet VAR cPw SIZE 150,25 PIXEL OF oDlg PASSWORD ;
      ACTION ( oGet:lShowPassWord := !oGet:lShowPassword ) ;
      BITMAP "..\bitmaps\fivetech3.bmp"

   @ 90,40 BUTTON "OK" SIZE 100,40 PIXEL OF oDlg ACTION oDlg:End()
   ACTIVATE DIALOG oDlg CENTERED
   ? cPw

return nil
Regards



G. N. Rao.

Hyderabad, India
Posts: 1096
Joined: Fri Oct 28, 2005 02:27 AM
Re: How to make password GET viewable on demand?
Posted: Mon May 13, 2024 08:41 AM

Thank you very much Rao!

FWH 11.08/FWH 19.12

BCC5.82/BCC7.3

xHarbour/Harbour
Posts: 866
Joined: Tue Oct 16, 2007 08:57 AM
Re: How to make password GET viewable on demand?
Posted: Tue May 14, 2024 07:28 AM
nageswaragunupudi wrote:
Code (fw): Select all Collapse
oGet:lShowPassword := .T. / .F.
to display or hide password
Code (fw): Select all Collapse
oGet:lShowPassword := !oGet:lShowPassword
to toggle display of password

Here is a sample
Code (fw): Select all Collapse
#include "fivewin.ch"

function Main()

   local oDlg, oGet
   local cPw   := Space( 20 )

   DEFINE DIALOG oDlg SIZE 300,200 PIXEL TRUEPIXEL
   @ 40,40 GET oGet VAR cPw SIZE 150,25 PIXEL OF oDlg PASSWORD ;
      ACTION ( oGet:lShowPassWord := !oGet:lShowPassword ) ;
      BITMAP "..\bitmaps\fivetech3.bmp"

   @ 90,40 BUTTON "OK" SIZE 100,40 PIXEL OF oDlg ACTION oDlg:End()
   ACTIVATE DIALOG oDlg CENTERED
   ? cPw

return nil
Dear Rao,

How about support Resource Get?
Best Regards,



Richard



Harbour 3.2.0dev (r2503251254) => Borland C++ v7.7 32bit

MySQL v8.0

Harbour 3.2.0dev (r2503251254) => Borland C++ v7.7 64bit
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: How to make password GET viewable on demand?
Posted: Tue May 14, 2024 12:28 PM
How about support Resource Get?
I guess you must be using the style ES_PASSWORD in the resource.
Above toggle should work with resource also.
Please try and provide your feedback.
Regards



G. N. Rao.

Hyderabad, India
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: How to make password GET viewable on demand?
Posted: Tue May 14, 2024 01:15 PM
Code (fw): Select all Collapse
DLG_SENHA_PASSWORD DIALOG 239, 157, 238, 148
STYLE DS_ABSALIGN | DS_MODALFRAME | 0x4L | WS_POPUP | WS_VISIBLE | WS_CAPTION
CAPTION "Password"
FONT 8, "MS Sans Serif"
{
 EDITTEXT 20, 90, 60, 50, 14, ES_CENTER | ES_MULTILINE | ES_PASSWORD | WS_BORDER | WS_GROUP | WS_TABSTOP
 PUSHBUTTON "&Confirme", 301, 57, 93, 70, 14
 PUSHBUTTON "&Saida", 302, 129, 93, 50, 14
 GROUPBOX "Password", 501, 58, 41, 122, 50, BS_GROUPBOX
}
Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 1344
Joined: Wed Nov 16, 2005 09:14 PM
Re: How to make password GET viewable on demand?
Posted: Tue May 14, 2024 02:55 PM
Desde recurso, así también funciona sin indicar que es ES_PASSWORD
Code (fw): Select all Collapse
DEFINE DIALOG oDlg1 RESOURCE "CHANGEPASS" OF oWnd1
   oDlg1:lhelpIcon := .f.
   REDEFINE GET oGet[1] VAR cNombre   OF oDlg1 ID 109
   REDEFINE GET oGet[2] VAR cUser        OF oDlg1 ID 110 
   REDEFINE GET oGet[3] VAR cPass1       OF oDlg1 ID 111
   REDEFINE GET oGet[4] VAR cPass2       OF oDlg1 ID 112
   oGet[3]:lPassword := .t.
   oGet[4]:lPassword := .t.
   REDEFINE BTNBMP oBtn RESOURCE "EYE"  OF oDlg1 ID 304 ACTION(ViewPass(oGet[3],oGet[4]))
   REDEFINE BUTTON oBot1 ID 102 OF oDlg1 ACTION ((mrta := .t.), oDlg1:End() )
   REDEFINE BUTTON oBot2 ID 103 OF oDlg1 ACTION ((mrta := .f.), oDlg1:End() ) CANCEL
ACTIVATE DIALOG oDlg1 CENTER 
...

//Show/Hide Password
STATIC FUNCTION ViewPass(oGet3,oGet4)
oGet3:lPassword := !oGet3:lPassword
oGet4:lPassword := !oGet4:lPassword
oGet3:Refresh()
oGet4:Refresh()
RETURN nil
Posts: 866
Joined: Tue Oct 16, 2007 08:57 AM
Re: How to make password GET viewable on demand?
Posted: Wed May 15, 2024 01:35 AM
nageswaragunupudi wrote:
How about support Resource Get?
I guess you must be using the style ES_PASSWORD in the resource.
Above toggle should work with resource also.
Please try and provide your feedback.
Dear Mr.Rao
Yes, You're right. I using the style ES_PASSWORD in the resource.
I add your code and working fine.
Code (fw): Select all Collapse
REDEFINE GET oPassWD VAR cPass ID 102 OF oDlg UPDATE CUEBANNER "使用者密碼" ;
      ACTION ( oPassWD:lShowPassWord := !oPassWD:lShowPassword )
Best Regards,



Richard



Harbour 3.2.0dev (r2503251254) => Borland C++ v7.7 32bit

MySQL v8.0

Harbour 3.2.0dev (r2503251254) => Borland C++ v7.7 64bit
Posts: 866
Joined: Tue Oct 16, 2007 08:57 AM
Re: How to make password GET viewable on demand?
Posted: Wed May 15, 2024 01:37 AM
cmsoft wrote:Desde recurso, así también funciona sin indicar que es ES_PASSWORD
Code (fw): Select all Collapse
DEFINE DIALOG oDlg1 RESOURCE "CHANGEPASS" OF oWnd1
   oDlg1:lhelpIcon := .f.
   REDEFINE GET oGet[1] VAR cNombre   OF oDlg1 ID 109
   REDEFINE GET oGet[2] VAR cUser        OF oDlg1 ID 110 
   REDEFINE GET oGet[3] VAR cPass1       OF oDlg1 ID 111
   REDEFINE GET oGet[4] VAR cPass2       OF oDlg1 ID 112
   oGet[3]:lPassword := .t.
   oGet[4]:lPassword := .t.
   REDEFINE BTNBMP oBtn RESOURCE "EYE"  OF oDlg1 ID 304 ACTION(ViewPass(oGet[3],oGet[4]))
   REDEFINE BUTTON oBot1 ID 102 OF oDlg1 ACTION ((mrta := .t.), oDlg1:End() )
   REDEFINE BUTTON oBot2 ID 103 OF oDlg1 ACTION ((mrta := .f.), oDlg1:End() ) CANCEL
ACTIVATE DIALOG oDlg1 CENTER 
...

//Show/Hide Password
STATIC FUNCTION ViewPass(oGet3,oGet4)
oGet3:lPassword := !oGet3:lPassword
oGet4:lPassword := !oGet4:lPassword
oGet3:Refresh()
oGet4:Refresh()
RETURN nil
Dear Cesar Gomez
Your sample code working fine. Thank you.
Best Regards,



Richard



Harbour 3.2.0dev (r2503251254) => Borland C++ v7.7 32bit

MySQL v8.0

Harbour 3.2.0dev (r2503251254) => Borland C++ v7.7 64bit

Continue the discussion