Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Application->MainFormOnTaskBar = false; BC++ 2009 
:(
    Опции темы
Alca
Дата 12.1.2009, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

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



Хочу спрятать окно в таскбаре (BC++ 2009). На шестерке все работало.
Код

#include <vcl.h>
#pragma hdrstop
#include <tchar.h>
//...
//---------------------------------------------------------------------------
WINAPI _tWinMain(HINSTANCE, HINSTANCE, LPTSTR, int) {
    try
    {
         //спрятать окно в таскбаре (так делал в шестерке)
        //DWORD Style=GetWindowLong(Application->Handle, GWL_EXSTYLE);
        //Style|=WS_EX_TOOLWINDOW;
        //SetWindowLong(Application->Handle, GWL_EXSTYLE, Style);

         Application->Initialize();
         Application->MainFormOnTaskBar = false;
         //ShowWindow(Application->Handle, SW_HIDE);

         Application->Title             = L"......";
         Application->CreateForm(__classid(TfrmMain), &frmMain);
         Application->Run();
    }
    catch (Exception &exception)
    {
         Application->ShowException(&exception);
    }
    catch (...)
    {
         try
         {
             throw Exception("");
         }
         catch (Exception &exception)
         {
             Application->ShowException(&exception);
         }
    }
    return 0;
}
//---------------------------------------------------------------------------

Почему не прячется окно в таскбаре?

Это сообщение отредактировал(а) Alca - 12.1.2009, 15:35


--------------------
PM WWW ICQ Skype Jabber   Вверх
Rrader
  Дата 12.1.2009, 19:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Inspired =)
***


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

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



Код

Application->CreateForm(__classid(TForm1), &Form1);
Application->MainFormOnTaskBar = false;


Добавлено через 1 минуту
Цитата(Help)

If false [MainFormOnTaskBar], a taskbar button represents the application's (hidden) main window and bears the application's Title. 



--------------------
Let's do this quickly!
Rest in peace, Vit!
PM MAIL Skype   Вверх
Alca
Дата 12.1.2009, 21:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

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



Спасибо то что надо, только при старте приложения все-равно видно форму в статус баре.
Можно ли сделать, чтоб оно вообще там не маяковало? 


--------------------
PM WWW ICQ Skype Jabber   Вверх
Alca
Дата 16.1.2009, 10:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

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



Может кто-то сталкивался с такими приколами?

Это сообщение отредактировал(а) Alca - 16.1.2009, 10:32


--------------------
PM WWW ICQ Skype Jabber   Вверх
mrbrooks
Дата 16.1.2009, 11:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

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



Код

#include <vcl.h>
#pragma hdrstop
#include <tchar.h>
//...
//---------------------------------------------------------------------------
WINAPI _tWinMain(HINSTANCE, HINSTANCE, LPTSTR, int) {
    try
    {
         Application->Initialize();
         Application->MainFormOnTaskBar = false;
         Application->ShowMainForm = false; 
         Application->CreateForm(__classid(TfrmMain), &frmMain);
         Application->Run();
    }
    catch (Exception &exception)
    {
         Application->ShowException(&exception);
    }
    catch (...)
    {
         try
         {
             throw Exception("");
         }
         catch (Exception &exception)
         {
             Application->ShowException(&exception);
         }
    }
    return 0;
}
//---------------------------------------------------------------------------

PM MAIL   Вверх
Alca
Дата 16.1.2009, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

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



Фонарь. НЕА.


--------------------
PM WWW ICQ Skype Jabber   Вверх
mrbrooks
Дата 16.1.2009, 11:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

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



Цитата(Alca @  16.1.2009,  11:08 Найти цитируемый пост)
Фонарь. НЕА. 

Че появляется чтоли?  smile 
PM MAIL   Вверх
Alca
Дата 16.1.2009, 11:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

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



Не пропадает. smile 


--------------------
PM WWW ICQ Skype Jabber   Вверх
mrbrooks
Дата 16.1.2009, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

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



Цитата(Alca @  16.1.2009,  11:13 Найти цитируемый пост)
Не пропадает.

Очень странно. 
У меня 
Код

Application->ShowMainForm = false; 

скрывает все. 

Может у тебя что нибудь эдакое в конструкторе формы?
PM MAIL   Вверх
Alca
Дата 16.1.2009, 11:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

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



Все убрал с конструктора - тоже самое. Скинь пж тестовый проект, я гляну.


--------------------
PM WWW ICQ Skype Jabber   Вверх
mrbrooks
Дата 16.1.2009, 11:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

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



Держи

Присоединённый файл ( Кол-во скачиваний: 10 )
Присоединённый файл  test.rar 259,43 Kb
PM MAIL   Вверх
Alca
Дата 16.1.2009, 12:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

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



Цитата

test.rar 259,43 Kb

Так форма спрятана же.....
Мне надо чтоб главная форма была видна, а на таскбаре ее не было.


--------------------
PM WWW ICQ Skype Jabber   Вверх
mrbrooks
Дата 16.1.2009, 13:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

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



Цитата(Alca @  16.1.2009,  12:17 Найти цитируемый пост)
Так форма спрятана же.....
Мне надо чтоб главная форма была видна, а на таскбаре ее не было. 

А Семен Семеныч. Я тебя не правильно понял. Смотри так надо?

Присоединённый файл ( Кол-во скачиваний: 19 )
Присоединённый файл  test.rar 252,17 Kb
PM MAIL   Вверх
Alca
Дата 16.1.2009, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

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



Да так!  smile 


--------------------
PM WWW ICQ Skype Jabber   Вверх
mrbrooks
Дата 16.1.2009, 13:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

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



Кидаю исходник  smile 


Присоединённый файл ( Кол-во скачиваний: 39 )
Присоединённый файл  test.rar 252,17 Kb
PM MAIL   Вверх
Alca
Дата 16.1.2009, 13:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

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



Там нема его  smile 


--------------------
PM WWW ICQ Skype Jabber   Вверх
mrbrooks
Дата 16.1.2009, 13:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

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



Ой не тот  smile Вот он

Присоединённый файл ( Кол-во скачиваний: 14 )
Присоединённый файл  test.rar 259,61 Kb
PM MAIL   Вверх
Alca
Дата 16.1.2009, 14:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

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



mrbrooks, спасибо, то что доктор прописал!
Код

WINAPI _tWinMain(HINSTANCE, HINSTANCE, LPTSTR, int) {
    try {
        Application->Initialize();
        Application->MainFormOnTaskBar = false;
        Application->ShowMainForm      = false;
        Application->CreateForm(__classid(TfrmMain), &frmMain);
        Application->Run();
    } catch (Exception &exception) {
        Application->ShowException(&exception);
    } catch (...) {
        try {
            throw Exception("");
        } catch (Exception &exception) {
            Application->ShowException(&exception);
        }
    }

    return 0;
}

Код

__fastcall TfrmMain::TfrmMain(TComponent* Owner) : TForm(Owner) {
    ShowWindow(Handle, SW_SHOW);
}

Короче, я в шоке. Интересно борландцы сами додумались до такого 
или им посоветовали парни из мелкософта?  smile  smile

Это сообщение отредактировал(а) Alca - 16.1.2009, 14:20


--------------------
PM WWW ICQ Skype Jabber   Вверх
mrbrooks
Дата 16.1.2009, 14:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

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



Цитата(Alca @  16.1.2009,  14:16 Найти цитируемый пост)
Интересно борландцы сами додумались до такого 
или им посоветовали парни из мелкософта? 

такие неоднозначные подходы - это еще так детские шалости - по сравнению с другими косяками smile 
PM MAIL   Вверх
Alca
Дата 16.1.2009, 14:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

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



P.S.
Некоторые косяки шестёрки они залепили аж тока в 2009 студии.


Если на форме находяться какие-то контролы, то их не видно.
P.S. #2
Нет слов.

Это сообщение отредактировал(а) Alca - 16.1.2009, 15:12


--------------------
PM WWW ICQ Skype Jabber   Вверх
Alca
Дата 16.1.2009, 18:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

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



1
2
3

Это сообщение отредактировал(а) Alca - 16.1.2009, 18:28


--------------------
PM WWW ICQ Skype Jabber   Вверх
mrbrooks
Дата 19.1.2009, 09:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

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



Цитата(Alca @  16.1.2009,  14:23 Найти цитируемый пост)


Да точно есть такой баг. Но я его поборол таким способом. В конструкторе формы:
Код


ShowWindow(Handle, SW_SHOW);
ShowWindow(Button->Handle, SW_SHOW); //если есть кнопка
ShowWindow(Memo->Handle, SW_SHOW);  //если есть мемо
                                                                       //так далее - по всем контролам

PM MAIL   Вверх
mrbrooks
Дата 19.1.2009, 09:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

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



хотя вот более кошерный способ - если компонентов много

Код

__fastcall TForm1::TForm1(TComponent* Owner): TForm(Owner)
{

ShowWindow(Handle,SW_SHOW);
for(int i =0; i< ControlCount; i++)
    {
            TWinControl *wc = (TWinControl *)FindComponent(Controls[i]->Name);
            ShowWindow(wc->Handle,SW_SHOW);
    }
}

PM MAIL   Вверх
Sharkfire
Дата 1.2.2009, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Видать сами)

Это сообщение отредактировал(а) Sharkfire - 1.2.2009, 17:53
PM MAIL ICQ   Вверх
Alca
Дата 2.2.2009, 10:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

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



Цитата

Видать сами)

???


--------------------
PM WWW ICQ Skype Jabber   Вверх
Sharkfire
Дата 2.5.2009, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Вообще столкнулся с той же проблемой.
Даже вариант mrbrooks-а не совсем помог.
При переборе в цикле не все контролы становятся видимыми.
В общем проблема дикая ! как убрать кнопку с таскабара так что бы потом не переделывать пол программы!!!!
PM MAIL ICQ   Вверх
Alca
Дата 2.5.2009, 16:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

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



я думаю надо копать исходники шестерки....


--------------------
PM WWW ICQ Skype Jabber   Вверх
A5uKa
Дата 2.5.2009, 17:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

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



Там очень хороший пример с "всё что надо от трея" лежит прямо в стандартных примерах.
и никуда ходить не надо.
PM   Вверх
Alca
Дата 2.5.2009, 17:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

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



Цитата

Там очень хороший пример

Как называеться?


--------------------
PM WWW ICQ Skype Jabber   Вверх
A5uKa
Дата 3.5.2009, 12:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

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



Цитата

Как называеться? 


D:\CODE-GEAR\Sources\CPP\Apps\TrayIcon
PM   Вверх
Superklug
Дата 2.6.2009, 01:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Я тоже с этой проблемой столкулся... В 6-м билдере все прекрасно работало. Кто-нибудь нашел приемлемое решение для 2009-го?
PM MAIL   Вверх
Sharkfire
Дата 2.6.2009, 10:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



нет лично я не выкрутился!

был ещё один какой то не испробованный способ на одном из форумов ... там на 2 страницы винапишного кода....


У меня посто в программе главное окно убегает в трей и кнопка эта чёртова сама исчезает

Добавлено через 1 минуту и 53 секунды
A5uKa, нема такого (
PM MAIL ICQ   Вверх
mrbrooks
Дата 2.6.2009, 12:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

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



из _tWinMain вырезаем Application->MainFormOnTaskBar = true;

в конструкторе формы вставляем Application->MainFormOnTaskBar = true;

Добавлено через 50 секунд
Цитата(Sharkfire @  2.6.2009,  10:01 Найти цитируемый пост)
A5uKa, нема такого ( 

ни чего подобного - в наличии.
PM MAIL   Вверх
Superklug
Дата 2.6.2009, 14:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



mrbrooks, спасибо! На вид конечно очень странное решение, но оно работает.. Единственный недостаток: при сворачивании окна, анимация происходит в нижний-левый угол. Хотелось бы все таки в иконку трея...

И еще теперь не приходит сообщение WM_SIZE при нажатии на кнопку "свернуть все"...  smile 

Это сообщение отредактировал(а) Superklug - 2.6.2009, 14:21
PM MAIL   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

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

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

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

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


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

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


 




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


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

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