Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

MDIChild Forms (WindowState)

7.4K
24 апреля 2009 года
T...H
159 / / 28.12.2008
/*Здарова программисты.
Есть код для дочерних форм:
for(int i = Form1->MDIChildCount-1;i>=0;i--)
{
TForm* MDIForm = ((TForm*)Form1->MDIChildren);
MDIForm->BorderStyle = bsSizeable;
MDIForm->WindowState=wsMinimized;
}
есть значит.... все формы сворачиваются.
Далее посылается такой же код, только развернуть код - разворачивается только одна форма.
Если восстановить все окна - ваще только выборочно (примерно половина) форм восстанавливается. Что это может быть?? :confused:
294
02 мая 2009 года
Plisteron
982 / / 29.08.2003
Приведённый код даже компилироваться не должен. Удивительно, что он работает.
Если же рабочий код отличается от приведённого и нормально сворачивает формы, но разворачивает через одну, то вывод прост: разворачивать в противоположном порядке.
 
Код:
void __fastcall TForm1::Button2Click(TObject *Sender)
{
    for(int i = this->MDIChildCount - 1; i >= 0; --i)
        this->MDIChildren->WindowState = wsMinimized;
}
void __fastcall TForm1::Button3Click(TObject *Sender)
{
    for(int i = 0, l = this->MDIChildCount; i < l; i++)
        this->MDIChildren->WindowState = wsNormal;
}
7.4K
02 мая 2009 года
T...H
159 / / 28.12.2008
понял. код не проверял, но спасибо.....
однако мне не понятен момент:
1. почему именно такая система?
2. судя из суждений, если я сверну все окна, то развернуть их нужно обратным циклом, а если потом восстановить, то опять первым циклом?
--- а если поменять местами восстановление и разворачивание?? :confused:
294
03 мая 2009 года
Plisteron
982 / / 29.08.2003
А если потратить 10 минут и поэкспериментировать?
7.4K
03 мая 2009 года
T...H
159 / / 28.12.2008
О НАйн!
Хорошо, что я десять минут поэксериментировал
и выяснил, что ваще ничего не работает. Раньше хоть частично раскрывались, а ща только текущее или там...короче всего одно... :mad:
294
03 мая 2009 года
Plisteron
982 / / 29.08.2003
Цитата: T...H
О НАйн!
Хорошо, что я десять минут поэксериментировал
и выяснил, что ваще ничего не работает. Раньше хоть частично раскрывались, а ща только текущее или там...короче всего одно... :mad:


У меня приведённый мной код нормально работает.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог