Re: Textbox Password Property ...
Posted: Thu Nov 27, 2014 8:41 pm
Hola PeteGW,
No trabaja.
Saludos
No trabaja.
Saludos
Exclusive forum for HMG, a Free / Open Source xBase WIN32/64 Bits / GUI Development System
https://www.hmgforum.com/
Code: Select all
************************************
METHOD UserLogin() CLASS UserManager
LOCAL lRetVal := FALSE
LOCAL acUser_ := ARRAY(3)
PRIVATE nTries := 1
PRIVATE lActivated := .f.
PRIVATE lSwitchOff := .f.
PRIVATE lUserName := .f.
DEFINE WINDOW frmLogin;
AT 0,0;
WIDTH 465 HEIGHT 212;
TITLE "Login";
ICON "MAINICON";
MODAL NOSYSMENU ;
FONT "Arial" SIZE 9 ON INIT ::Open() ON RELEASE ::Close()
@ 52,210 LABEL lblUserName OF frmLogin VALUE "User Name";
ACTION Nil WIDTH 70 HEIGHT 20 FONT "Arial" SIZE 9
@ 87,210 LABEL lblPassword OF frmLogin VALUE "Password";
ACTION Nil WIDTH 70 HEIGHT 20 FONT "Arial" SIZE 9
@ 48,290 TEXTBOX txbUserName OF frmLogin HEIGHT 24 VALUE "" WIDTH 120;
FONT "Arial" SIZE 9 TOOLTIP "" MAXLENGTH 10 ON LOSTFOCUS Nil;
ON ENTER ( frmLogin.txbPwd.Setfocus, frmLogin.txbPwd.CaretPos := 0 );
ON CHANGE ::tbxChangeArg( This.Name )
@ 84,290 TEXTBOX txbPassword OF frmLogin HEIGHT 24 WIDTH 120;
PASSWORD MAXLENGTH 10 UPPERCASE ON LOSTFOCUS Nil ON ENTER lRetVal := ::LoginButtonOK(@acUser_)
@ 84,290 TEXTBOX txbPwd OF frmLogin HEIGHT 24 VALUE "" WIDTH 120;
MAXLENGTH 10 ON CHANGE ::tbxChangeArg( This.Name )
@ 10, 10 IMAGE imgLogo OF frmLogin PICTURE ::cImageFile WIDTH 150 HEIGHT 160 STRETCH
@ 10,130 IMAGE imgLock OF frmLogin PICTURE ::cImageHome + "key.bmp" WIDTH 30 HEIGHT 30 STRETCH
@ 10,170 LABEL Label_3 OF frmLogin VALUE "Please enter your security credentials...";
ACTION Nil WIDTH 280 HEIGHT 20 FONT "Arial" SIZE 11 BOLD FONTCOLOR BLUE
@ 30,170 FRAME Frame_1 OF frmLogin CAPTION NIL;
WIDTH 280 HEIGHT 100 FONT "Arial" SIZE 9 BACKCOLOR Nil FONTCOLOR Nil OPAQUE
@ 140,280 BUTTON btnOk OF frmLogin CAPTION "&Ok" ACTION lRetVal := ::LoginButtonOk(@acUser_) WIDTH 80 HEIGHT 24 FONT "Arial" SIZE 9
@ 140,370 BUTTON btnCancel OF frmLogin CAPTION "&Cancel" ACTION lRetVal := ::LoginButtonCancel() WIDTH 80 HEIGHT 24 FONT "Arial" SIZE 9
END WINDOW
frmLogin.Center
frmLogin.txbUserName.Value := "User ID"
frmLogin.txbUserName.FontColor := GRAY
frmLogin.txbPassword.Hide
frmLogin.txbPwd.Value := "Password"
frmLogin.txbPwd.FontColor := GRAY
frmLogin.txbPwd.CaretPos := 0
frmLogin.txbUserName.Setfocus()
frmLogin.txbUserName.CaretPos := 0
lActivated := .t.
frmLogin.Activate
IF lRetVal
::aUserInfo_ := acUser_
ENDIF
IF nTries > LOGINTHRESHOLD
::AccessDenied := TRUE
ENDIF
RETURN lRetVal
*****************************************************
METHOD tbxChangeArg( cControlName ) CLASS UserManager
IF .NOT. lActivated
RETURN NIL
ENDIF
DO CASE
CASE cControlName == "txbUserName"
IF .NOT. lUserName
frmLogin.txbUserName.Value := SUBSTR( ALLTRIM( frmLogin.txbUserName.Value ), 1, 1 )
frmLogin.txbUserName.FontColor := BLACK
frmLogin.txbUserName.CaretPos := 1
lUserName := .t.
ENDIF
CASE cControlName == "txbPwd"
IF .NOT. lSwitchOff
frmLogin.txbPwd.Hide()
frmLogin.txbPassword.Show()
frmLogin.txbPassword.Value := SUBSTR( ALLTRIM( frmLogin.txbPwd.Value ),1 ,1 )
frmLogin.txbPassword.Setfocus()
frmLogin.txbPassword.CaretPos := 1
lSwitchOff := .t.
ENDIF
ENDCASE
RETURN NIL
Hi Franco,Hello all,
A different question on passwords.
I seen a program where if there was no program action for a certain time, say 30 seconds, the password window would open and employee had to enter new password to continue with program.
Must be easy, at start of program create timer variable???, any thoughts.
Franco