Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как "показать" динамическую форму в панели задач, при создании её? 
V
    Опции темы
Sergio
  Дата 26.4.2007, 19:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 843
Регистрация: 28.7.2006
Где: Solar System-> Earth

Репутация: 1
Всего: 1



Здраствуйте. Как динамическую форму показать в панели задач? Тоесть чтобы было видно на панели что окно создалось. Какое свойство за это отвечает? 
 Зарание спасибо.
PM MAIL ICQ   Вверх
Snowy
Дата 26.4.2007, 20:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 1
Всего: 484



Создай protected метод:
Код

void __fastcall TForm1::CreateParams(TCreateParams &Params);
begin
  inherited;
  Params->ExStyle = Params->ExStyle | WS_EX_APPWINDOW;
end;
Ну или что-то в этом роде. Могу ошибиться - билдера у меня нет и синтаксис не родной.
В дельфи Params - var параметр. В билдере не знаю, как это пишется. Вроде так...
PM MAIL   Вверх
Sergio
Дата 29.4.2007, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 843
Регистрация: 28.7.2006
Где: Solar System-> Earth

Репутация: 1
Всего: 1



Snowy, а можно подробней описать? Или дать ссылку на сорс...
PM MAIL ICQ   Вверх
Snowy
Дата 30.4.2007, 09:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 1
Всего: 484



Подробней: нужно просто в стили окна добавить APPWINDOW.
Не нашёл я как в билдере зовётся аналог inherited.
Сделал по другому:
Код

__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner)
{
  SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) | WS_EX_APPWINDOW);
}

PM MAIL   Вверх
dumb
Дата 30.4.2007, 13:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 32
Всего: 158



Цитата(Snowy @  30.4.2007,  09:11 Найти цитируемый пост)
Не нашёл я как в билдере зовётся аналог inherited.

Код

void __fastcall TForm1::CreateParams(Controls::TCreateParams &Params)
{
  TForm::CreateParams(Params);
  Params.ExStyle = Params.ExStyle | WS_EX_APPWINDOW;
}


PM MAIL   Вверх
Sergio
Дата 30.4.2007, 14:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 843
Регистрация: 28.7.2006
Где: Solar System-> Earth

Репутация: 1
Всего: 1



dumb, скажи пожалуйста принемает в качестве параметра TForm::CreateParams(Params)??

Добавлено @ 14:32
Snowy, что то не работае smile Наверное что-то неправильно делаю

Код

        TForm* Forma = new TForm(Application, 1);
        Forma->Width = 320;
        Forma->Height = 365;
        Forma->Left = Form1->Left + Form1->Width/2 - (Forma->Width/2);
        Forma->Top = Form1->Top + Form1->Height/2 - (Forma->Height/2);
        Forma->BorderStyle = bsSingle;
        Forma->BorderIcons = TBorderIcons() <<biSystemMenu <<biMinimize;
        Forma->Caption = "Dialog with: " + _Nick;
        Forma->Show();

       HANDLE Handle = Forma;

  SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) |WS_EX_APPWINDOW);


Это сообщение отредактировал(а) Sergio - 30.4.2007, 14:33
PM MAIL ICQ   Вверх
Klin
Дата 30.4.2007, 14:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1938
Регистрация: 7.10.2002
Где: Краснодар

Репутация: 20
Всего: 25



Sergio, воспользуйтесь способом Snowy. Это самый распространенный способ.

Добавлено через 2 минуты и 44 секунды
з.ы. 
Код

SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) |WS_EX_APPWINDOW);


Используйте перед Forma->Show();


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
Sergio
Дата 30.4.2007, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 843
Регистрация: 28.7.2006
Где: Solar System-> Earth

Репутация: 1
Всего: 1



Klin, написал как ты сказал - НЕ РАБОТАЕТ smile 
Код

void __fastcall TForm1::Button1Click(TObject *Sender)
{
        TForm* Forma = new TForm(Application, 1);
        Forma->Width = 320;
        Forma->Height = 365;
        Forma->Left = Form1->Left + Form1->Width/2 - (Forma->Width/2);
        Forma->Top = Form1->Top + Form1->Height/2 - (Forma->Height/2);
        Forma->BorderStyle = bsSingle;
        Forma->BorderIcons = TBorderIcons() <<biSystemMenu <<biMinimize;
        Forma->Caption = "Dialog with: ";
        HANDLE Handle = Forma;
        SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) |WS_EX_APPWINDOW);
        Forma->Show();
}

PM MAIL ICQ   Вверх
Klin
Дата 30.4.2007, 14:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1938
Регистрация: 7.10.2002
Где: Краснодар

Репутация: 20
Всего: 25



АААА! 
Цитата(Sergio @  30.4.2007,  15:50 Найти цитируемый пост)
HANDLE Handle = Forma;
        SetWindowLong(Handle, 

Handle - НЕЛЬЗЯ ИСПОЛЬЗОВАТЬ!!!!! ИСПОЛЬЗУЕТ ОСНОВНАЯ ФОРМА!!!

пишешь: Forma->Handle


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
Sergio
Дата 30.4.2007, 14:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 843
Регистрация: 28.7.2006
Где: Solar System-> Earth

Репутация: 1
Всего: 1



Теперь ясно. Всем спасибо.
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0774 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.