|
Tabbed Dialog (SSTab) - на какой закладке находится контрол?
|
|||
---|---|---|---|
#18+
Как бы получить соответствие в рантайме, какой контрол на какой закладке находится. Сам контрол своим контейнером считает SSTab. Понятно, что SSTab знает, что где находится, но делится ли он этой инфой? На самый крайняк сгодится информация, находится ли некий контрол на активной вкладке. Я думал, что SSTab при переключении манипулирует свойством Visible принадлежаих ему контролов, ан нет, видимо что-то делает через API. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2011, 11:21 |
|
Tabbed Dialog (SSTab) - на какой закладке находится контрол?
|
|||
---|---|---|---|
#18+
А еще при переходе по контролам табом он передает фокус невидимым контролам. Самое лучшее это засунуть все контролы в какой-нибудь фрейм, а фрейм в закладку, вопросы что да где отпадают за ненадобностью. Если нужен какой-то универсальный механизм, то из фреймов можно сделать массив и соглашение об именах, если на форме не дай бог более одного сстаба. Вообще неудачный это контрол, я им не пользуюсь. За возможность переключать вкладки в дизайн-тайме приходится расплачиваться борьбой с глюками, душераздирающим дизайном, отсутствием поддержки стилей и наличием лишнего ocx. TabStrip из Common Controls лишен этих недостатков. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2011, 11:48 |
|
Tabbed Dialog (SSTab) - на какой закладке находится контрол?
|
|||
---|---|---|---|
#18+
Я юзаю C1Tab от ComponentOne у него есть свойство GetTab Вот из хелпа: GetTab Property Returns the tab page where a given control is located. Syntax val% = [form!]C1Tab.GetTab(hWnd As Long) Remarks This property is only useful if the control has an hWnd property. If you pass GetTab an invalid window handle, or a window that does not belong to any tab, GetTab will return the value -1. This property is read-only. Data Type Integer При выполнении цикла Код: vbnet 1. 2. 3.
если контрол находится C1Tab1, то возвращаемое значение Код: vbnet 1.
будет равно индексу таба которому принадлежит контрол Если контрол вне C1Tab1 возвращаемое значение =-1 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2011, 12:00 |
|
Tabbed Dialog (SSTab) - на какой закладке находится контрол?
|
|||
---|---|---|---|
#18+
Опять всплыл вопрос - решил поискать по форуму, нашел свой же прошлогодний топик Итак, методом последовательного приближения, пёсьих манипуляций и тыка выявил, что SSTab делает с контролами неактивных закладок. Он задвигает их Control.Left=Control.Left-75000 за край себя, а для активной - достает. То-то я понять не могу - у меня отрабатывает процедура размещения контролов на форме (которая двигает их при ресайзе), после чего при переключениях вкладок начинает твориться такое, что я просто в ступор впадал - контролы других закладок оказывались видимы, на некоторых вкладках - невидимы (видимо уже пытаясь восстановиться по принципу Left+75000 улетали за другой край SSTab-а), в общем - веселуха. Это, собственно, автоответ на мой же вопрос топика. Теперь попробую с этим бороться, хоть понятно теперь - куда. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2012, 20:29 |
|
|
start [/forum/topic.php?fid=60&fpage=68&tid=2157385]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
28ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
2ms |
others: | 16ms |
total: | 128ms |
0 / 0 |