Прячим форму

Общие вопросы программирования, алгоритмы и т.п.

Модератор: Модераторы

Прячим форму

Сообщение qivi » 20.03.2009 14:16:39

Подскажите как в Лазарусе реализовать функцию аналогичную фукции делфи

showwindow(Application.handle, SW_HIDE); //Прячим кнопку на панели задачь, форма видима и можно с ней работать
showwindow(Frorm1.handle, SW_HIDE); //Прячим форму

Интересуют обе функции, нужно чтоб кнопки на панели не было, а с формой можно было работать.
Аватара пользователя
qivi
энтузиаст
 
Сообщения: 703
Зарегистрирован: 19.01.2009 13:45:54
Откуда: Россия

Re: Прячим форму

Сообщение Mr.Smart » 20.03.2009 14:43:51

Эти функции не Делфи! Это чистый WinAPI :wink:
У каждой формы есть свойство ShowInTaskBar - должно работать

А в Винде не кто тебе не мешает использовать эти функции. Подключи модуль Windows
Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: Прячим форму

Сообщение qivi » 20.03.2009 15:12:17

Подключил модуль Windows...
showwindow(Form1.handle, SW_HIDE); //Прячим форму
ЗАРАБОТАЛА, форма исчезает.

showwindow(Application.handle, SW_HIDE); //Прячим кнопку на панели задачь, форма видима и можно с ней работать
НЕРАБОТАЕТ, жалуется на HANDLE (Error: identifier idents no member "Handle")
:(
Аватара пользователя
qivi
энтузиаст
 
Сообщения: 703
Зарегистрирован: 19.01.2009 13:45:54
Откуда: Россия

Re: Прячим форму

Сообщение alexs » 20.03.2009 20:31:30

Не изобретай велосипед - у каждого окна есть свойство ShowInTaskBar - и не надо мучаться.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4054
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Прячим форму

Сообщение qivi » 20.03.2009 22:40:28

А я все таки нашел решение :)
Все оказалось очень просто...
может кому тоже пригодиться:

ShowWindow(FindWindow(nil,'project1'), sw_hide); - прячим кнопку на панели задачь
ShowWindow(FindWindow(nil,'project1'), sw_show); - показываем кнопку на панели задачь

Пользуйтесь :)
Аватара пользователя
qivi
энтузиаст
 
Сообщения: 703
Зарегистрирован: 19.01.2009 13:45:54
Откуда: Россия

Re: Прячим форму

Сообщение Mr.Smart » 21.03.2009 01:25:51

qivi писал(а):А я все таки нашел решение :)
Все оказалось очень просто...
может кому тоже пригодиться:

ShowWindow(FindWindow(nil,'project1'), sw_hide); - прячим кнопку на панели задачь
ShowWindow(FindWindow(nil,'project1'), sw_show); - показываем кнопку на панели задачь

Пользуйтесь :)

Это не выход! Очень медленно!
alexs писал(а):Не изобретай велосипед - у каждого окна есть свойство ShowInTaskBar - и не надо мучаться.

на Application он не расспространяется...
Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: Прячим форму

Сообщение qivi » 21.03.2009 09:28:17

А как пользоваться ShowInTaskBar, что-то я не понял .... какой параметр не ставил этому свойству, ничего не происходило :(
Киньте примерчик пожалуйста...
Аватара пользователя
qivi
энтузиаст
 
Сообщения: 703
Зарегистрирован: 19.01.2009 13:45:54
Откуда: Россия

Re: Прячим форму

Сообщение alexs » 22.03.2009 11:45:59

Mr.Smart писал(а):на Application он не расспространяется...

Application.ShowMainForm
Глядеть в исходники LCL очень полезно.

qivi писал(а):как пользоваться ShowInTaskBar, что-то я не понял

stDefault - системное поведение
stAlways - отображать всегда
stNever - не отображать

работает :-)
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4054
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь


Вернуться в Общее

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

Рейтинг@Mail.ru