![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Перемещение между компонентами в программе (TAB) [D7, Win95/98, Win2k, WinXP]
П7 © (2004-08-04 13:44:00)Заметил, что у меня в программе порядок перемещение по ТAB'у обратный отрисовке. Может я какой флаг в свойствах формы изменил?
(2004-08-05 14:24:00) [1]Удалено модератором
Игорь Шевченко (2004-08-05 14:13:00) [2]
> Перемещение между контролов идёт задом наперёд. ):
А в отладчике посмотреть TabOrder для созданных контролов не судьба ?
П7 (2004-08-05 13:56:00) [3]
> MacroDenS © (04.08.04 18:01) [18]
Прописываю. И прямой пробовал и обратный порядок пробовал. Всё равно. Перемещение между контролов идёт задом наперёд. ):
MacroDenS (2004-08-04 18:01:00) [4]а прописывай новым созданным компонентам TabOrder вручную потаму как он отвечает за порядок следования контролов,
количество уже созданный компонентов можно получить так form1.ComponentCount
П7 (2004-08-04 15:07:00) [5]"ПсихЪ завыл и кинулся грудью на стену!" (с) Опять TabOrder. Он мне будет снится в ночных кошмарах.
Потестил сейчас. Даже если задаю обратный порядок TabOrder всё равно TAB'ание происходит задом наперёд. Мне на зло, что ли. Такое чувство, что он вообще всячески игнорит сей TabOrder и делает, что хочет. Может его как-нибудь приструнить? Через WinAPI может? Или какие-нибудь недокументированные свойства форм?
Sergey Kaminski (2004-08-04 15:01:00) [6]> У меня есть подозрение, что порядок TAB'ания вручную изменён в проге, которая юзает мой плагин.
Может быть и так.
> Можно ли как-нибудь его изменить обратно?
Изменить можно установив TabOrder, если это в твоей власти.
Sergey Kaminski (2004-08-04 14:59:00) [7]Попробуй локализовать проблему. То, что проблема в ДЛЛ ни о чем не говорит, имхо.
П7 (2004-08-04 14:57:00) [8]У меня есть подозрение, что порядок TAB'ания вручную изменён в проге, которая юзает мой плагин. Можно ли как-нибудь его изменить обратно? А по выходе вернуть в исходное состояние. Вообще, кто что знает по поводу TAB'ания?
П7 (2004-08-04 14:49:00) [9]
> Sergey Kaminski © (04.08.04 14:42) [11]
Блин, ну вот опять. Я всё это понимаю. Никто меня не умоляет. Это я прошу подсказать решение. Так же говорю, что это не проблема TabOrder. Он тут не при чём совершенно. Делаю такую же форму в отдельном приложении и всё работает нормально, а вот в этой DLL не работает нормально.
Интерес у меня ясен пень гораздо больше, чем у всех остальных, так и должно быть в идеале. Именно поэтому я прошу у вас совета, может быть вы тоже хоть немного заинтересуетесь проблемой или просто захотите помочь человеку. Я прошу, а не заставляю вас умолять меня выложить код!!!
На счёт кода, я почему спрашиваю? Да потому, что ВСЁ я выложить не смогу, тем более прогу для которой пишу плагин. Могу выложить куски кода своей библиотеки. НО что конкретно нужно? А то я выложу, а мне скажут "Сам дурак!" и забьют на мою проблему...
Sergey Kaminski (2004-08-04 14:46:00) [10]Это не "наезд", упаси Боже.
Просто дело всего лишь в TabOrder (по крайней мере, мне так кажется). А вокруг нее может быть накручено столько, что только ты и сможешь разгрести. Попробуй еще раз внимательно пересмотреть порядок создания компонентов и порядок присвоения им TabOrder'a
Sergey Kaminski (2004-08-04 14:42:00) [11]Тогда все, что нужно для решения, уже привели.
Ты думаешь, тебя умоляют показать код. Ошибаешься. У всех гораздо меньше интереса к твоей проблеме, чем у тебя самого.
П7 (2004-08-04 14:27:00) [12]
> Sergey Kaminski © (04.08.04 14:17) [8]
БЛИН!!!! ): Ну чё вы такие, а? Ну ведь всё понимаете, только цепляетесь не к тому.
> Iconka © (04.08.04 14:18) [9]
Ну а при чём сдесь код? Я ничего странного в проге не делаю. Точнее это даже не прога, а надстройка над одной прогой. Исходник надстройки могу в ограниченном объёме выложить. Прога не бесплатная и не моя, извините, но мне не улыбает заниматься пиратством, к тому же там выкладывать больше 10 мегов.
Моя форма зарыта в DLL. Может это фича DLL?
Iconka (2004-08-04 14:18:00) [13]
> Копать нужно куда-то не туда...
Пора выкладывать код.
Sergey Kaminski (2004-08-04 14:17:00) [14]Значит, Shift на клавиатуре залип :)
Пс. TabOrder начинать нужно с 0.
П7 (2004-08-04 14:15:00) [15]
> Anatoly Podgoretsky © (04.08.04 14:04) [6]
Кому его и во что установить? Если редактировать визуально, то у меня есть на форме статичные кнопки - три штуки. 1-1, 2-2, 3-3. Т.е. Первая имеет TabOrder=1, вторая =2 и т.д. Так вот после запуска прога как будто вместо инкремента делает декремент. Хоит не от 1 к 2, а наоборот. Вот я и думаю, может чего перепутал, не в то значение поставил. То о чём вы говорите, я прекрасно знаю, но это не то. Копать нужно куда-то не туда...
Anatoly Podgoretsky (2004-08-04 14:04:00) [16]Не связаные никак вещи, говорят установи TabOrder значит установи.
Sergey Kaminski (2004-08-04 13:57:00) [17]
Нет, не он. К тому же некоторая часть компонентов на форме рисуется динамически, например сверху вниз рисуются текстовые поля, а при TAB'ании фокус бродит снизу вверх.
Я и говорю, присваивай свойство TabOrder как тебе хочется, когда создаешь
Sergey Kaminski (2004-08-04 13:56:00) [18]угу! щелкай правой кнопкой по форме, там - Tab Order!
Не обязательно. У самого контрола есть свойство TabOrder.
П7 (2004-08-04 13:54:00) [19]Нет, не он. К тому же некоторая часть компонентов на форме рисуется динамически, например сверху вниз рисуются текстовые поля, а при TAB'ании фокус бродит снизу вверх.
WondeRu (2004-08-04 13:52:00) [20]Может просто TabOrder виноват?
угу! щелкай правой кнопкой по форме, там - Tab Order!