Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как создать окно с фиксированными размерами клиентской части?


Геннадий ©   (2005-05-26 18:30:00) 

Вот я передаю в CreateWindowEx ширину и высоту, допустим 640 и 480, (стиль WS_OVERLAPPED or WS_SYSMENU), но получается все окно таких размеров, а надо, чтобы таких размеров была клиентская часть. Вот как в VCL я для формы задаю ClientWidth и ClientHeight вместо Width и Height...

Скажите, как такое сделать... Спасибо!


Геннадий   (2005-05-26 23:14:00) [1]

Работает! Спасибо!


Ученик   (2005-05-26 22:34:00) [2]

>Геннадий   (26.05.05 20:14) [2]

Пример использования



procedure TForm1.Button1Click(Sender: TObject);
var
 TempRect: TRect;
begin
 TempRect := Rect(0, 0, 640, 480);
 if AdjustWindowRect(TempRect, GetWindowLong(Handle, GWL_STYLE), False) then begin
   OffsetRect(TempRect, -TempRect.Left, -TempRect.Top);
   with TempRect do ShowMessage(Format('%d %d %d %d', [Left, Top, right, Bottom]))
 end  
end;


Геннадий   (2005-05-26 22:17:00) [3]

Неужели никто не знает? Я читал хелп, но там не понятно - как передавать полученный RECT в функцию CreateWindow?


Геннадий   (2005-05-26 20:14:00) [4]

Попробовал, но запутался... Подскажите, пожалуйста, как ей пользоваться?


Игорь Шевченко   (2005-05-26 18:33:00) [5]

AdjustWindowRect не поможет ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо