CYFROWY BARON • PROGRAMOWANIE • Zobacz wątek - Przywracanie okna

Przywracanie okna

dział ogólny

Przywracanie okna

Nowy postprzez mate006 » niedziela, 3 lipca 2011, 13:34

Witam
Od kilku godzin męczę się z przywróceniem okna.
A mianowicie uruchamiam program ukryty do traya, po uruchomieniu zegar coś tam sprawdza i jeśli nie spełnia warunków to powinno przywrócić okno.

Wszystko działa do momentu przywrócenia. Jak kliknę dwa razy na ikonce traya to przywraca tak jak chce, ale chciałbym by to zegar przywracał

Próbowałem użyć tych poleceń ale nie pokazuje

Kod: Zaznacz cały
TrayIcon->Restore();
Form1->Show();
Avatar użytkownika
mate006
Intelektryk
Intelektryk
 
Posty: 145
Dołączył(a): wtorek, 2 marca 2010, 14:12
Podziękował : 7
Otrzymał podziękowań: 0
System operacyjny: Windows 7 Premium 64
Kompilator: Embarcadero® C++Builder® XE
Gadu Gadu: 0
    Windows 7Firefox

Re: Przywracanie okna

Nowy postprzez Cyfrowy Baron » niedziela, 3 lipca 2011, 14:40

Jeżeli chcesz przywrócić całą aplikację, to używasz funkcji:

KOD cpp:     UKRYJ  
Application->Restore();


Dla minimalizacji całej aplikacji używasz funkcji:

KOD cpp:     UKRYJ  
Application->Minimize();


Minimalizacja i przywracanie okna głównego odnoszą się do całej aplikacji, a nie tylko do tego okna. Inaczej niż to jest w przypadku okien wtórnych.
Jeżeli chcesz by minimalizacja lub przywracanie okna głównego nie wiązały się z całą aplikacją, to w pliku nagłówkowym właściwym dla okna lub wielu okien wtórnych (dla każdego oddzielnie) umieść deklarację:

np. Unit2.h
KOD cpp:     UKRYJ  
private:
        void __fastcall CreateParams(TCreateParams &Params);


Natomiast w w pliku źródłowym umieść taki kod:

np. Unit2.cpp
KOD cpp:     UKRYJ  
void __fastcall TForm2::CreateParams(TCreateParams &Params)
{
 TForm::CreateParams(Params);
 Params.ExStyle |= WS_EX_APPWINDOW;
 Params.WndParent = GetDesktopWindow();
}
Umieszczenie powyższego kodu w oknach wtórnych ma jeszcze tą zaletę, że będą się one minimalizowały na pasek zadań i każde okno wtórne z takim kodem będzie miało swój przycisk na pasku zadań.

Okna wtórne możesz minimalizować i przywracać za pomocą kodu:

KOD cpp:     UKRYJ  
ShowWindow(Form2->Handle, SW_MINIMIZE);
ShowWindow(Form2->Handle, SW_RESTORE);
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    Windows XPFirefox


Powrót do Ogólne problemy z programowaniem

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 4 gości