| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Как обработать минимизацию формы? |
| Автор: Cyri 14.12.2004, 14:18 |
| Народ, как обработать нажатие кнопки Минимайз формы? Ну и Максимайз заодно. Кирилл |
| Автор: Vladimir13 14.12.2004, 14:31 |
| Form1.Windowstate:=wsminimized; Form1.Windowstate:=wsnormal; form1.windowsstate:=wsMinimized; Добавлено @ 14:34 т.е. if Form1.Windowstate:=wsminmized then ... это и будет соответствовать нажатию на _ |
| Автор: Rennigth 14.12.2004, 14:39 |
| если инете поискать можно найти довольно приличные апгдэйды на RichEdit с реализацией гиперссылок. |
| Автор: Vladimir13 14.12.2004, 15:58 |
| if Form1.BorderIcons=[biMinimize] then Form1.close; этот код закрывает форму при нажатии на _. Извиняюсь за неправильный ответ, не понял вопроса. Добавлено @ 16:00 Rennigth а причем здесь RichEdit и апгрейды к нему? |
| Автор: Bes 14.12.2004, 16:08 |
| Может обрабатывать событие формы OnResize после чего проверять св-во Form1.Windowstate ? |
| Автор: Vladimir13 14.12.2004, 19:05 |
| [/size] НАРОД !!!![size=1] обратите внимание на эту тему !!! Ничего из предложенного не работает !!! Нужны свежие мысли !!! |
| Автор: Vladimir13 14.12.2004, 19:31 |
| Единственное решение которое приходит на ум: сделать Form1.BorderStyle:=bsNone; создать панель, на которой расположить 3 SpeedButton'а c картинками _ , х , и квадратик. Им присвоить соответствующие свойства. Так отслеживать легко. |
| Автор: Marriage 14.12.2004, 23:14 | ||||
With help Delphi Word 6 |
| Автор: Bes 15.12.2004, 07:32 |
| 2Marriage Не тут-то было :-) форма не сворачивается и не разворачивается. |
| Автор: Cyri 15.12.2004, 09:11 | ||
Это хорошо. Но это-крайний выход. Всё-таки хотелось бы не так. Вроде бы мелочь, ан нет... |
| Автор: Bes 15.12.2004, 09:29 |
| 2Cyri,Vladimir13 : Тем более, что даже если ты приделаешь эти кнопки, то форму еще можно минимизировать щелкнув на ней в панели управления или как там она внизу которая и ваш обработчик не среагирует... Тут что-то другое надо. Сам думаю.. :-) |
| Автор: Snowy 15.12.2004, 09:53 |
| Посмотрите этот топик: http://forum.vingrad.ru/index.php?showtopic=31971 Там как раз отлавливается сворачивание окна. После сворачивания окно насильно восстанавливается обратно. Отловить сворачивание просто. Кладем на форму TApplicationEvent. Вот у него уже есть события: OnMinimize OnRestore OnActionExecute OnActionUpdate OnActivate OnDeactivate OnException OnHelp OnHint OnIdle OnMessage OnSettingChange OnShortCut OnShowHint |
| Автор: Guest 15.12.2004, 10:29 | ||||
Можно было бы и догадаться
|
| Автор: Marriage 15.12.2004, 11:23 |
| Забыл войти под своим именем ... Вот теперь все должно работать !!!! |
| Автор: Vladimir13 16.12.2004, 21:16 |
| мой способ хоть и примитивен, но работает Простота - залог успеха! |
| Автор: Guest 16.12.2004, 22:41 | ||
ТЫ хочешь сказать , что преведенный выше код не работает ??? |
| Автор: Vladimir13 16.12.2004, 23:02 |
| я хочу сказать, что мой код РАБОТАЕТ, а другие я не проверял |
| Автор: Marriage 16.12.2004, 23:03 | ||
Это по твоему просто ???? |
| Автор: Vladimir13 16.12.2004, 23:12 |
| а что сложно? это первое решение которое пришло мне в голову. |
| Автор: Marriage 16.12.2004, 23:23 |
| 2Vladimir13 По-моему оно нерациональное. |
| Автор: Vladimir13 16.12.2004, 23:35 |
| кому как. На вкус и цвет... я за простоту решений, пусть они "тяжелые", большие и не красивые... |
| Автор: Bes 17.12.2004, 07:36 |
| 2Vladimir13: Боюсь, что если форму сворачивать не твоими кнопками а из панели то твой метод не сработает. :-( Так что лучше пожалуй обрабатывать сообщения и проще, хотя я конечно твоего кода не видел.... |
| Автор: Vladimir13 17.12.2004, 07:42 |
| повторяю: я придумал этот код, когда у других вообще не было никаких идей. Что то - лучше чем ничего. |
| Автор: Bes 17.12.2004, 07:44 |
| Нет, ну Базара нет. |
| Автор: Vladimir13 17.12.2004, 08:04 |
| когда все отмахивались, а кто то |
| Автор: Bes 17.12.2004, 08:14 |
| :-) ладно-ладно я ж не против, просто к чему такой спор... |