![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
alt+Tab [D7]
RGV © (2010-04-21 02:41:00)Я делаю программу в которой запущенно одновременно >6 окон, однако меня раздражает присутствие их всех в "alt+Tab", мне бы хотелось, чтобы в Alt+tab отображалась только mainForm.
Спасибо за помощь.
RGV (2010-04-22 10:25:00) [1]Спасибо за кулинарную книгу.
> - Application.Handle и есть дескриптор этой кнопки. Убивать
> ее нельзя, а можно спрятать...
Ну да я это и хотел сказать.
Спасибо за советы.
TIF (2010-04-22 03:46:00) [2]> SetWindowLong(Application.Handle, GWL_EXSTYLE,
> GetWindowLong (Application.Handle, GWL_EXSTYLE) or
> WS_EX_TOOLWINDOW and notWS_EX_APPWINDOW);
Все ингридиенты в наличии, осталось только отделить белки от желтков и понять какие логические операциинад ними нужно произвести, чтобы один "заяц" не помешал другому
Как верно подмечено в [14], нужно заглянуть в кулинарную книгу - MSDN Library:
http://msdn.microsoft.com/en-us/library/ms632680.aspx
Не занят (2010-04-22 03:13:00) [3]
> RGV © (22.04.10 02:45) [12]
> Как же убить двух зайцев? )
> искать handle кнопки и убивать ?
> А если искать , то как можно быстро найти свою кнопку? Не
> ужели EnumWindows? А быстрее?
- Application.Handle и есть дескриптор этой кнопки. Убивать ее нельзя, а можно спрятать. Но она все равно появится при определенных дейcтвиях.
- Почитай про стили окна, и что делают про WS_EX_TOOLWINDOW, WS_EX_APPWINDOW. Это альтернативный путь решения.
Германн (2010-04-22 02:51:00) [4]
> RGV © (22.04.10 02:45) [12]
>
> Как же убить двух зайцев? )
> искать handle кнопки и убивать ?
> А если искать , то как можно быстро найти свою кнопку? Не
> ужели EnumWindows? А быстрее?
???
О каких зайцах речь?
RGV (2010-04-22 02:45:00) [5]Как же убить двух зайцев? )
искать handle кнопки и убивать ?
А если искать , то как можно быстро найти свою кнопку? Не ужели EnumWindows? А быстрее?
Германн (2010-04-22 02:41:00) [6]
> А вот это есть:
>
>
> SetWindowLong(Application.Handle, GWL_EXSTYLE,
> GetWindowLong(Application.Handle, GWL_EXSTYLE) or
> WS_EX_TOOLWINDOW and not WS_EX_APPWINDOW);
>
>
Откуда и чей пример использовал?
И главное - зачем?!
RGV (2010-04-22 02:27:00) [7]Доброе время суток!
> А как ты смог такого добиться?!
)) Чесно ни длл ни таво хуже ShellExecute !!? Сам ни знаю как так получилось )))))))))
> WS_EX_APPWINDOW ?
А вот это есть:
SetWindowLong(Application.Handle, GWL_EXSTYLE,
GetWindowLong(Application.Handle, GWL_EXSTYLE) or
WS_EX_TOOLWINDOW and not WS_EX_APPWINDOW);
Убрал.... Аллилуйя в alt+tab отображается только активная форма.
Но, зато зловещая )) кнопка в таскбаре теперь отображается.
Юрий Зотов (2010-04-21 15:57:00) [8]WS_EX_APPWINDOW ?
Ins (2010-04-21 15:41:00) [9]Что-то он с ними явно сделал и не признается.
Ega23 (2010-04-21 15:37:00) [10]Поди формы в dll запихнул.
Ins (2010-04-21 15:34:00) [11]А в панели задач тоже все?
Andy BitOff (2010-04-21 15:23:00) [12]
> что я делаю не так
Всё =)
Плохиш (2010-04-21 11:02:00) [13]
> Andy BitOff © (21.04.10 10:31) [3]
>
> Сдается мне, что это свойство новых операционок (виста и
> выше).
У меня такого эффекта нет, что я делаю не так?
Andy BitOff (2010-04-21 10:31:00) [14]Сдается мне, что это свойство новых операционок (виста и выше).
Харакири (2010-04-21 09:20:00) [15]>А как ты смог такого добиться?!
Телепатор подсказывает, что он, по-видимому, каждое окно в отдельной программе ваяет. А потом через ShellExecute() запускает. :-)
Германн (2010-04-21 02:49:00) [16]
> RGV © (21.04.10 02:41)
>
> Я делаю программу в которой запущенно одновременно >6 окон,
> однако меня раздражает присутствие их всех в "alt+Tab",
> мне бы хотелось, чтобы в Alt+tab отображалась только mainForm.
>
>
> Спасибо за помощь.
>
А как ты смог такого добиться?!