|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Дек 13, 2003 02:57:50 · Поправил: prog В окне есть несколько EDIT в стиле каждого есть WS_TABSTOP но TAB и Shift+TAB не перемещает фокус между ними. Что еще не сделал? И еще- а как задать номер в перемещении (TabOrder)? |
|
|
Дата: Дек 13, 2003 03:32:32 Они должны быть в диалоговом окне. И еще- а как задать номер в перемещении (TabOrder)? Это задаётся в шаблоне диалога. Номер перемещения - это порядковый номер дочернего контрола в шаблоне. |
|
|
Дата: Дек 13, 2003 04:10:52 А какже если не в диалоговом?? Если просто в окне?? И без ресурсов. Нужно без ресурсов и в не диалоговом окне. Помогите. |
|
|
Дата: Дек 13, 2003 04:17:29 Угу, у меня тоже такая проблема, есть контролы с WS_TABSTOP, всё это запихано в ресурс как диалог. Если создавать всё это через DialogBox(), всё нормально, а если через Createdialog(), тогда не срабатывает... Как быть, если нужно использовать CreateDialog() ? Ведь DialogBox() создаёт модальное окно. Можно конечно указывать NULL в качестве родительского. Но всё ж... Неужели так криво и CreateDialog не поддерживают Tab? На всякий случай, я попробовал заменить в стандартном коде VC++ в функции создания диалога о программе DialogBox на CreateDialog, tab также перестал работать и в окне "о программе" |
|
|
Дата: Дек 13, 2003 04:22:41 · Поправил: Asterix prog Если "не в диалоговом окне и без ресурсов", то придётся сабклассить Edit Control'ы и применять SetFocus. |
|
|
Дата: Дек 13, 2003 04:49:29 · Поправил: prog понятно.. Спасибо. |
|
|
Дата: Дек 13, 2003 23:29:17 А, во, нашёл в WinApi функцию, IsDialogMessage() , её надо сразу после GetMessage() , в главный цикл воткнуть, если она возвращает тру, дальнейшую обработку вообще производить не надо. Единственно, что неприятно, ей надо указывать хэндл окна для которого нужна обработка, я сделал вот так : IsDialogMessage(GetParent(msg.hwnd), &msg)); |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.084 |