Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.144.84.155] |
|
Сообщ.
#1
,
|
|
|
Интересно. А каким образом без мышки можно перемещаться по элементам формы?
У меня в одной форме (состоит из двух edit-ов и одного батона) происходит перемещение по табу. В остальных формах этого нет. ничего специально неписал для этого. Может у кого есть какие мысли? Эта тема была разделена из темы "Delphi for PHP" |
Сообщ.
#2
,
|
|
|
также как и в делфи у каждого контрола, который имеет фокус, есть свойства TabOrder (параметр порядка предоставления фокуса), TabStop (Давать фокус по табу или нет)
|
Сообщ.
#3
,
|
|
|
Цитата Ahil @ Интересно. А каким образом без мышки можно перемещаться по элементам формы? У меня в одной форме (состоит из двух edit-ов и одного батона) происходит перемещение по табу. В остальных формах этого нет. ничего специально неписал для этого. Может у кого есть какие мысли? Разбирался с этим в 1-й версии Там если нужно сделать переходы между полями ввода на форме то TabOrder почему то не срабатывало Но альтернативой этому есть перехват клавиш в JavaScript Делаем так: function Edit2JSKeyUp($sender, $params) { ?> //if (event.keyCode == 13|| event.keyCode == 9) if (event.keyCode == 40) // если нажата клавиша "стрелка вниз" { findObj("Edit1").focus(); } if (event.keyCode == 38) // если нажата клавиша "стрелка вверх" { findObj("Edit3").focus(); } <?php } в событии KeyUp это работает а вот в KeyPress срабатывают только обычные клавиши P.S. Реально делать не стал, т.к. в проекте туча форм, а на них туча едитов, это пока все опишеш |
Сообщ.
#4
,
|
|
|
Цитата vicis @ Там если нужно сделать переходы между полями ввода на форме то TabOrder почему то не срабатывало Узнал что это происходит если использовать групбокс (ктомуже к нему трудно применять стили). Если групбокса нет в форме то табордер работает замечательно. |
Сообщ.
#5
,
|
|
|
Цитата Ahil @ Узнал что это происходит если использовать групбокс (ктомуже к нему трудно применять стили). Если групбокса нет в форме то табордер работает замечательно. ну, на эту тему есть ещё несколько глюков. Не знаю - остались ли они во 2-й версии, но в первой с ними пришлось бороться Проблемы с едитами, с сохранениями данных и т.п. вот некоторые коментарии(записал для себя): 1. Т.к. плохо работает Edit с GroupBox (не выделяется нормально текст, когда нужно) то лучше использоватьTextField но если с TextField использовать базу данных то при редактировании сбрасываются значения полей, если их не заполняли в связи с этим луше использовать Shape как замена GroupBox или ещё лучше Panel (можно будет все компоненты двигать группой) Shape->Pen.Color=#969696 Shape->Shape=stRectangle если нужен заголовок для GroupBox то использовать Label Label->Aligment=agCenter Label->Color=#FFFFFF 2. Сделать Edit внешне похожим на TextField и даже круче нужно использовать стиль например: файл css-real.css .inputBlack { height: 18px; width: 212px; border-left: 1px solid black; border-top: 1px solid black; border-right: 1px solid black; border-bottom: 1px solid black; font-size: 12px; color: #232323; padding-top: 3px; } .inputBlue { height: 18px; width: 212px; border-left: 1px solid blue; border-top: 1px solid blue; border-right: 1px solid blue; border-bottom: 1px solid blue; font-size: 12px; color: #232323; padding-top: 3px; } Ставим на форму StuleSheet StuleSheet->FileName=css-real.css и подключаем стиль к Edit Edit->Style=.inputBlue |