![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Подскажите плз в чем может быть причина [D7, XP]
smartleds © (2008-05-12 13:52:00)в поле ввода text edit при первом вводе в поле ввода после старта программы, при вводе первого символа курсор не сдвигается вправо, начинает сдвигаться только при вводе второго.
например, вожу слово privet
пусть |-> положение курсора
при вводе буквы "p" получаю такую ситуацию
1) |p , а должно быть p|
когда ввожу вторую букву , то она вводится на место положения курсора получаем
2). r|p , а должно быть pr|
не пойму в чем дело это только при первом старте программы , потом все нормально вводится
Amoeba (2008-05-12 14:50:00) [1]Еще замени в обработчике
form1.Edit1.PasswordChar := '*';
на
Edit1.PasswordChar := '*';
И больше так никогда не пиши
{RASkov} (2008-05-12 14:30:00) [2]> [12] smartleds (12.05.08 14:29)
> и эффектпропал
И ты это называешь эффектом? :) Да твоя программа в целом эффект еще тот :)))
smartleds (2008-05-12 14:29:00) [3]Спасибо всем , убрал из обработчика form1.Edit1.PasswordChar := '*'; и вставил, как тут советовали в formcreate и эффект пропал
{RASkov} (2008-05-12 14:29:00) [4]....а не программа)
Anatoly Podgoretsky (2008-05-12 14:28:00) [5]Ужас!
Ega23 (2008-05-12 14:22:00) [6]
> Вот у меня обработчик такой , при помощи этого эдита пароль
> ввожу
>
> procedure TForm1.Edit1Change(Sender: TObject);
>
> begin
> form1.Edit1.PasswordChar := '*';
> end;
>
Ужас какой... :(
Palladin (2008-05-12 14:21:00) [7]хем... и чем же продиктовано, столь божественное откровение, при каждом изменении данных выставлять все время одно и тоже свойство, которое достаточно один раз выставить в дизайнере формы?
smartleds (2008-05-12 14:21:00) [8]вот сама программа
// --------- Button Enter ---------------
procedure TForm1.Button2Click(Sender: TObject);
var pass:string;
begin
pass:=edit1.text;
//form1.Memo1.Lines.Append(' pass='+(pass)+' ');
if pass='privet' then begin
form1.Memo1.Lines.Append('Пароль принят'+' ');
button1.Click;
end
else form1.Memo1.Lines.Append('не верный пароль'+' ');
end;
Palladin (2008-05-12 14:21:00) [9]с дубу рухнуть можно, на какие выдумки голь хитра...
{RASkov} (2008-05-12 14:21:00) [10]> [5] smartleds (12.05.08 14:19)
Ну и зачем так делать???
Это нужно 1 раз только, например при создании формы ...или вообще в ио
Вот поэтому и прыгает, так как идет пересоздание окна эдита
smartleds (2008-05-12 14:19:00) [11]Вот у меня обработчик такой , при помощи этого эдита пароль ввожу
procedure TForm1.Edit1Change(Sender: TObject);
begin
form1.Edit1.PasswordChar := '*';
end;
Big Joe (2008-05-12 14:17:00) [12]Может быть в обработчике есть что-то вроде SetFocus ...
{RASkov} (2008-05-12 14:14:00) [13]> Однозначно в обработчиках данного эдита...
ну или по таймеру :).... ужас какой)
{RASkov} (2008-05-12 14:13:00) [14]> [0] smartleds (12.05.08 13:52)
> Подскажите плз в чем может быть причина
Однозначно в обработчиках данного эдита... ищи места с установкой курсора, например SelStart....
Palladin (2008-05-12 14:03:00) [15]кто'ж тебя знает чего ты там напрограммировал..