![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Edit без фокуса
Романов Р.В. © (2003-01-21 16:26:00)Возможно ли без написания потомка сделать так чтобы компонент TEdit (в частности) не получал фокус при клике на нем мышкой. Может какие нибудь стили подправить надо RunTime.
Спрашивающий (2003-01-22 01:40:00) [1]А не проще ли при переходе на Edit1 передавать фокус ввода очередному элементу ну скажем Edit2.SetFocus и все?
uw (2003-01-21 22:10:00) [2]Здорово!
Романов Р.В. (2003-01-21 20:14:00) [3]edPayAll.TabStop := False;
uw (2003-01-21 19:52:00) [4]Все равно не здорово. Табуляция застревает.
Романов Р.В. (2003-01-21 17:43:00) [5]Вот в принципе все что нужно было сделать.
SetWindowLong(edPayAll.Handle, GWL_STYLE, GetWindowLong(edPayAll.Handle, GWL_STYLE) or WS_DISABLED);
PS: Плохо когда MSDN нет под рукой.
uw (2003-01-21 17:27:00) [6]>han_malign. А все равно мышкой выбирается.
error 2k (2003-01-21 17:22:00) [7]REA, согласен:)
REA (2003-01-21 17:18:00) [8]И StaticText не гармонирует?
error 2k (2003-01-21 17:15:00) [9]Mike Kouzmine, чего?
в событии OnEnter этого компонента ставишь
FindNextControl(Sender as TWinControl, true true, false).SetFocus;
han_malign (2003-01-21 17:14:00) [10]ControlStyle:=ControlStyle+[csNoStdEvents];
TabStop:=false;
Mike Kouzmine (2003-01-21 17:04:00) [11]Создай глоб перемену : TWinControl На всех контролах (креме этого эдита) на onExit присваивай этой переменной значение Sender as TWinControl, а на onEnter edita поставь ИмяПерем.SetFocus
uw (2003-01-21 17:04:00) [12]Рассмотрение разных системных программ показывает, что в таких компонентах, как Memo, Edit, разработчики заботятся только о том, чтобы TabStop было False и ReadOnly было True. И еще серенький цвет. И все это выглядит нормально.
Skier (2003-01-21 17:00:00) [13]При клике на нём мышкой вызывай SelectNext(...)
Не поможет ?
Smithson (2003-01-21 16:59:00) [14]А если .Disable := True;
KDenis (2003-01-21 16:56:00) [15]А с помощью
ApplicationEventsпробовал?
Романов Р.В. (2003-01-21 16:51:00) [16]Я хочу едит не получал фокус. ReadOnly у него уже давно поставлен. TLabel не хочу ставить по эстетическим соображениям, он не гармонирует с другими Editami на форме.
KDenis (2003-01-21 16:47:00) [17]<<должно быть false>>
Тоестьtrue
KDenis (2003-01-21 16:46:00) [18]Попробуй для этого едита написать такой обработчик события
TForm1.Edit1Click:button1.SetFocus;
А если ты просто нехочешь, чтоб текст в едите изменяли, то его свойствоReadOnlyдолжно бытьfalse