Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.09.2010, 22:00   #1
bulldog5293
Форумчанин
 
Регистрация: 13.05.2010
Сообщений: 670
По умолчанию Свернуть окно на winapi

Понимаю вопрос нубский, но не где ответа не нашёл. Окно создаю со стилем WS_POPUP, в обработчик кнопки для закрытия поставил ShutDown, а что поставить для сворачивания в панель задач не знаю, есть ли у кого идеи?
bulldog5293 вне форума Ответить с цитированием
Старый 29.09.2010, 09:04   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Отвечаю настолько насколько понял вопрос:
Код:
SendMessage(<Хендель окна>,WM_SYSCOMMAND,SC_MINIMIZE,0);
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 29.09.2010, 13:42   #3
bulldog5293
Форумчанин
 
Регистрация: 13.05.2010
Сообщений: 670
По умолчанию

Не то, забыл подробней объяснить, у меня просто делается закрытие так:
Код:
function WindowProc(hwnd, msg, wparam, lparam: longint): longint; stdcall; //обработчик сообщений
begin
  Result := DefWindowProc(hwnd, msg, wparam, lparam);
  case Msg of

WM_COMMAND:
if (lParam = Button1) and (HiWord(wParam) = BN_CLICKED) then
  begin
  ShutDown; // это закрытие
  end
else
if (lParam = Button3) and (HiWord(wParam) = BN_CLICKED) then
   begin
 // А сюда сворачивание хочу поставить
//пробывал SendMessage(Form,WM_SYSCOMMAND,SC_MINIMIZE,0);
//Но не сворачивается
end;
  WM_DESTROY: ShutDown;
  end;
end;
bulldog5293 вне форума Ответить с цитированием
Старый 29.09.2010, 17:09   #4
bulldog5293
Форумчанин
 
Регистрация: 13.05.2010
Сообщений: 670
По умолчанию

Не уж то не кто не ответит, просто про ShutDown ели ели откапал, а про минимизацию (свёртывание) так и не могу найти
bulldog5293 вне форума Ответить с цитированием
Старый 29.09.2010, 17:41   #5
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

Цитата:
//пробывал SendMessage(Form,WM_SYSCOMMAND,SC_M INIMIZE,0);
Почему там какой-то Form? Что это вообще?
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Старый 29.09.2010, 18:12   #6
bulldog5293
Форумчанин
 
Регистрация: 13.05.2010
Сообщений: 670
По умолчанию

Form это хандлер приложения
bulldog5293 вне форума Ответить с цитированием
Старый 29.09.2010, 19:54   #7
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

Что значит "приложения"? HInstance чтоль?
Вам же сказали - нужно указывать хэндл окна, Wnd...

Кстати функция обработки сообщений так объявляется:
Код:
Function WindowProc(Wnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; Stdcall;
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Баг в цикле: программно развернуть - свернуть - восстановить окно chandrasecar Общие вопросы Delphi 23 02.12.2011 16:05
[?] Послать клавишу в чужое окно, не выводя окно на передний план. Moriarty Win Api 4 21.02.2011 05:11
Открывать окно печати, окно просмотра и изменять масштаб. segail Microsoft Office Excel 1 08.08.2010 19:31
Свернуть, развернуть, восстановить окно chandrasecar Win Api 1 15.10.2008 00:13
«Окно+символ». Создать класс, представляющий окно в текстовом режиме. RustreX Паскаль, Turbo Pascal, PascalABC.NET 1 11.11.2007 19:28