how to see the typed letter in GUI
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Pat
am 22 Apr. 2014
Kommentiert: Walter Roberson
am 22 Apr. 2014
I have acode below (in key press function) GUI
password = get(handles.edit1,'String');
key = get(handles.figure1,'currentkey');
key1=get(handles.figure1,'currentcharacter')
switch key
case 'backspace'
password = password(1:end-1); % Delete the last character in the password
otherwise
password = [password get(handles.figure1,'currentcharacter')] % Add the typed character to the password
end
SizePass = size(password) % Find the number of asterisks
if SizePass(2) > 0
asterisk(1,1:SizePass(2)) = '*'; % Create a string of asterisks the same size as the password
set(handles.edit1,'String',asterisk) % Set the text in the password edit box to the asterisk string
else
set(handles.edit1,'String','')
end
I have created a GUI with one edit boxThe above code is to mask the typed letter in edit box into asterisk,but i cannot see the typed password,then the variable password ,if i have typed 123 in edit box,the edit box show 3 asterisk but in that variable password it shows **3,y i get like this
0 Kommentare
Akzeptierte Antwort
Walter Roberson
am 22 Apr. 2014
Reading or changing the String of an edit handle gives odd results in a key press function callback.
I think Yair has a way of getting it to work using Java.
You may wish to look in the File Exchange for password boxes.
4 Kommentare
Walter Roberson
am 22 Apr. 2014
You have your code set password to get() the String of the edit box, and you do that every time you go through the callback. You have been changing the edit box to display '*' as you go, so the next time through the callback it is those '*' that are going to be there to be pulled out by your get() of the 'String' property.
If you look at the contribution I linked to above, notice that they initialize password differently:
password = get(h,'Userdata');
That is, the real characters of the password are being stored in the UserData field as you go, and at the end when the user is ready go on, you would get() the UserData field for the completed password. Of course you need to store the characters into the UserData as you go; the contribution does that.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Search Path finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!