Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.11.28;
Скачать: [xml.tar.bz2];

Вниз

Как развернуть свое окно на весь экран если BorderStyle= bsNone?   Найти похожие ветки 

 
kofman   (2002-11-15 23:08) [0]

Мастера, вопрос такой: какое сообщение надо отослать моему окну (BorderStyle= bsNone) что-бы оно максимизировалось?


 
AngeL B.   (2002-11-15 23:56) [1]

Если изменение свойства WindowState не помогает, то просто поменяй размеры свой формы вручную в соответствие с текущим разрешением экрана (Screen.Width ,Screen.Height);


 
friker!   (2002-11-16 08:59) [2]

Примерно так..! form1.BorderStyle:=bsNone;
form1.WindowState:=wsMaximized


 
kofman   (2002-11-16 14:44) [3]

form1.WindowState:=wsMaximized помогло, но окно разворачивается на весь экран и при этом перекрывает таск бар, как быть. Я вообщето думал может PostMessage использовать?


 
Nikolay   (2002-11-16 18:09) [4]

можно.


 
Николай Быков   (2002-11-16 19:08) [5]


> kofman © (16.11.02 14:44)

На весь экран так посылать сообщение SendMessage(Form1.Handle,WM_SYSCOMMAND,SC_MAXIMIZE,0);

А таскбар перекрывать будет, т.к. оно бордюров не имеет.

Щас посмотрю в хелпе по WinAPI. Может есть что-нибудь подходящее для тебя


 
kofman   (2002-11-16 20:06) [6]

>Николай Быков спасибо. А почему если в обычном окне нажать максимизацию, то окно не перекрывает таск бар?


 
Николай Быков   (2002-11-16 20:12) [7]


> kofman © (16.11.02 20:06)
> >Николай Быков спасибо.

Потому что обычное окно имеет бордюры, а если поставить bsNone то бордюров не будет


 
Nikolay   (2002-11-16 23:27) [8]

криво но работает

var
a,b:integer;
begin
SendMessage(Form1.Handle,WM_SYSCOMMAND,SC_MAXIMIZE,0);
a:=form1.Height;
b:=form1.Width;
Form1.BorderStyle:=bsNone;
form1.Height:=a;
form1.Width:=b;


 
kofman   (2002-11-17 01:13) [9]

Большое спасибо за советы и за примеры - все работает. Но вот окошко перекрывает таск бар, а это делать никак нельзя. Как это дело победить?


 
Николай Быков   (2002-11-17 07:04) [10]

А ты скажи что сделать хочешь, может по-другому это можно сделать


 
kofman   (2002-11-17 11:14) [11]

Да все просто, есть обычное окошко но без бордюра (BorderStyle= bsNone). На всю клиенскую часть окна натянут Image с фоновой картинкой - это и есть моя рабочая форма. Вверху как положено три кнопочки - тоже Image`ы. Одна из них это - развернуть на весь экран. Как вот, окошко хоть и без бордюра, но при развороте должно вести себя как нормальное т.е. не перекрывать таск бар. Лично я вижу только один выход: определить размер таск бара, его положение а уж потом развернуть форму вручную изменяя высоту и ширину формы.... но геморой это, и может криво выйти на разных компах. Может у кого-то еще соображения есть?


 
Николай Быков   (2002-11-17 11:41) [12]


> kofman © (17.11.02 11:14)

Не геморрой, а простая лень

+вот что эта программа делает?
Если это что-то вроде: поменять фон рабочего стола и добавить на него кнопки и прочию хрень, то можно сделать и по другому.

Я тебя спрашивал чо эта программа делать будет.


 
kofman   (2002-11-17 12:26) [13]

Это программа для скачивания web-сайтов (паук).


 
kofman   (2002-11-18 00:17) [14]

Мастера ну помогите как быть?


 
Diamond Cat   (2002-11-18 00:33) [15]

а почему обязательно сообщение, можно и через setwindowpos. а размеры области не занимаемой таскбаром можно вычислить используя к примеру APPBARDATA


 
Игорь Шевченко   (2002-11-18 12:20) [16]

var
WorkArea: TRect;
...
{ Рабочая область экрана }
SystemParametersInfo(SPI_GETWORKAREA,0,Pointer(@WorkArea),0);
...
И изменять размеры окна до этого прямоугольника, например, функцией SetWindowPos


 
kofman   (2002-11-18 14:21) [17]

Большое спасибо всем за советы.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.11.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.008 c
1-92992
Nelud
2002-11-16 21:37
2002.11.28
Рюкзачный алгоритм


4-93313
Aleksandr
2002-10-16 15:47
2002.11.28
Не получается окно сделать диалоговым :(


14-93256
Snake2000
2002-11-07 12:32
2002.11.28
---|Ветка была без названия|---


3-92855
MaxM
2002-11-05 23:04
2002.11.28
---|Ветка была без названия|---


3-92860
Nick-From
2002-11-06 23:18
2002.11.28
Delphi + Prolog = Экспертная система





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский