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

Вниз

правильное сохранение размеров окна   Найти похожие ветки 

 
Darkwing ©   (2006-07-07 10:39) [0]

Программа сохраняет в .ini файл размеры главного окна при его закрытии. Вопрос в том, как сохранить размеры и положение состояния wsNormal если окно при закрытии находится в wsMaximized?


 
PSPF2003 ©   (2006-07-07 10:44) [1]

Наверное, надо использовать какой-нибудь флаг, при загрузке проверяем если он равен true, уснавливаем необходимое состояние


 
medved_68 ©   (2006-07-07 10:47) [2]


> Darkwing

А ты не давай закрыть окно пока оно wsMaximized. Пусть репу почешут:)))


 
SerJaNT ©   (2006-07-07 11:00) [3]

Может так

if form1.windowstate = wsMaximized then
begin
... что-то делаем если окно максимизированно
end else
begin
... что-то делаем если окно в каком-то другом состоянии
end;


 
Darkwing ©   (2006-07-07 11:05) [4]

Программа сохраняет wsMaximized или wsNormal которые были при закрытии. надо как-то в момент перехода из wsNormal в wsMaximized сохранять значения размеров wsNormal. Типа задача сводится к тому чтобы определить момент перехода из wsMaximized в wsNormal.


 
Darkwing ©   (2006-07-07 11:06) [5]

то есть wsNormal из wsMaximized


 
SerJaNT ©   (2006-07-07 11:07) [6]

Нет, на событие onclose надо поставить тот код который я привел.


 
SerJaNT ©   (2006-07-07 11:08) [7]

При закрытие ты проверяшь в каком состоянии окно, и, если оно максимизированно, то в ини пишешь что оно как-будто минимизированно.


 
StriderMan ©   (2006-07-07 11:09) [8]

TForm1 = class(TForm)
 ...
 private
   fSTop: integer;
   fSLeft: integer;
   fSWidth: integer;
   fSHeight: integer;
 
 ....
 public
   procedure setBounds(...); override;
 ....

procedure TForm1.SetBounds(...);
begin
 windowstate = wsNormal then
 begin
    fSTop := Top; //Сохраняем размеры если в состоянии wsNormal
    ....

 end;
 inherited
end;


 
SerJaNT ©   (2006-07-07 11:15) [9]


> StriderMan ©   (07.07.06 11:09) [8]


Примерно это же и я предлогаю


 
StriderMan ©   (2006-07-07 11:18) [10]


> Примерно это же и я предлогаю

вобщем да, только надо не на закрытии проверятьа как я написал в SetBounds, а то если растянут форму, а потом развернут на весь экран и закроют, то сохранятся параметры до растягивания


 
Ketmar ©   (2006-07-07 11:33) [11]

GetWindowPlacement()



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

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

Наверх





Память: 0.46 MB
Время: 0.015 c
2-1151582908
Id
2006-06-29 16:08
2006.07.30
KEY


15-1151516366
TUser
2006-06-28 21:39
2006.07.30
Диск или контроллер?


2-1152549870
Belorus
2006-07-10 20:44
2006.07.30
Доступ к MS SQL


15-1151778718
SergP
2006-07-01 22:31
2006.07.30
test


4-1145000154
Keks
2006-04-14 11:35
2006.07.30
Очередь печати принтера





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский