Edit InputBoxa i gwiazdki

0

Cześć.
Jak wygwiazdkować edit w InputBoxie?

Chodzi mi o to, żeby użytkownik miał możliwość wpisania hasła w inputBox, ale ma ono być gwiazdkowane.

0

możesz napisać własnego inputboxa ?

0
Milka napisał(a)

możesz napisać własnego inputboxa ?

No to ja dobrze wiem :/
Ale nie można tego zrobić jakoś na tym już istniejącym?

0

Chyba nie przewidziano takiej możliwości w InputBoxie, ale chyba dałoby sie to zrobić wyszukując uchwyt tego edita (EnumWindows itd.) i zmienić mu styl na EM_PASSWORD. Troche na około, możnaby też zrobić takie okienko jako formę, albo jako dialog.

0
const
  InputBoxMessage = WM_USER + 200;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
    procedure SetPassword(var Msg: TMessage); message InputBoxMessage;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.SetPassword(var Msg: TMessage);
var 
  hInputForm, hEdit: HWND;
begin 
  hInputForm := Screen.Forms[0].Handle;
  if (hInputForm <> 0) then 
  begin
    hEdit := FindWindowEx(hInputForm, 0, 'TEdit', nil);
    SendMessage(hEdit, EM_SETPASSWORDCHAR, Ord('*'), 0);
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var 
  InputString: string;
begin
  PostMessage(Handle, InputBoxMessage, 0, 0);
  InputString := InputBox('Hasło podawaj !!!', 'Prosze o hasło', '');
end;

Takie cosik [diabel]

0
mitring napisał(a)

Takie cosik [diabel]

Osz Ty w życiu :D
Wielki dzięki [browar]

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0