buk Geschrieben 8. Dezember 2009 Geschrieben 8. Dezember 2009 guude, Ich habe unter Visual Studio 2008 Professional ein neues Visual C++ CLR Projekt erstellt. Meiner Form1 habe ich ein NotifyIcon hinzugefügt und showInTaskbar auf false gestellt. nun wird aber meine Form1 immernoch geladen und ich suche eine möglichkeit dies abzustellen. es soll nur das icon in der taskbar zu sehen sein. ich suche da nun schon seit ca. 3h und werde nicht fuendig. waere super wenn mir jmd helfen koennte. regards, buk
buk Geschrieben 8. Dezember 2009 Autor Geschrieben 8. Dezember 2009 guude, Form1::Visible = false; hatte ich schon probiert aber leider erfolglos. bzw wo genau muss das hin? in den konstruktor, oder in die Form1.h ? funktioniert aber leider beides nicht. gruessle, buk
Hahne Geschrieben 8. Dezember 2009 Geschrieben 8. Dezember 2009 Versuchs mal mit der Windows-Hide Funktion. Window.Hide-Methode (System.Windows)
buk Geschrieben 8. Dezember 2009 Autor Geschrieben 8. Dezember 2009 guude, Versuchs mal mit der Windows-Hide Funktion. Window.Hide-Methode (System.Windows) auch das funktioniert leider nicht. in der $insertYourAppNameHere.cpp wird durch den aufruf von Application::Run(gcnew Form1()); eine neue Form namens Form1 erstellt und durch einen loop "am leben gehalten" bis der benutzer dies beendet. in der Form1.h habe ich saemtliche deklarationen zur Form1 darunter auch den Konstruktor etc. egal wo ich eure vorschlaege eintrage, nichts aendert sich. eine neue Form zu erstellen und diese zu verstecken funktioniert auch nicht. ich bin gerade ziemlich ratlos. ich bilde mir auch ein das ich das unter C# schonmal zum laufen bekommen habe. regards, buk
Sassy Geschrieben 8. Dezember 2009 Geschrieben 8. Dezember 2009 Also mein Vorschlag Form1.Visible = False muss dann in die Main Routine. Zeig doch mal deinen Quellcode, pls.
Gateway_man Geschrieben 8. Dezember 2009 Geschrieben 8. Dezember 2009 (bearbeitet) C++ CLR "Formname"->Visible = False; Bearbeitet 8. Dezember 2009 von Gateway_man
buk Geschrieben 8. Dezember 2009 Autor Geschrieben 8. Dezember 2009 guude, danke schonmal fuer die antworten. ich werde morgen mal den quelltext posten. wenn ihr aber ein normales visual c++ clr windowsforms projekt erstellt, dann das notifyicon im ressource builder auf die form zieht seit ihr soweit wie ich aber ich poste den code morgen. regards, buk
Gateway_man Geschrieben 8. Dezember 2009 Geschrieben 8. Dezember 2009 (bearbeitet) Habs gerade getestet. Pardon ich bin schon etwas eingerostet. Wenn du im context des aktuellen Form Headers, eben dieses Form zu verstecken versuchst, dann schreib einfach: /* nicht sichtbar */ this->Visible = false; /* sichtbar */ this->Visible = true; Sieht bei mir wie folgt aus: private: System::Void showToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e) { this->Visible = true; } private: System::Void notifyIcon1_MouseDoubleClick(System::Object^ sender, System::Windows::Forms::MouseEventArgs^ e) { } private: System::Void Form1_Shown(System::Object^ sender, System::EventArgs^ e) { this->Visible = false; notifyIcon1->Visible = true; } Bearbeitet 8. Dezember 2009 von Gateway_man
buk Geschrieben 9. Dezember 2009 Autor Geschrieben 9. Dezember 2009 guude, Sieht bei mir wie folgt aus: private: System::Void Form1_Shown(System::Object^ sender, System::EventArgs^ e) { this->Visible = false; notifyIcon1->Visible = true; } vielen dank. dieser code schnipsel war der gewinner! nun muss ich dem notifyicaon nur noch ein menue dazubasteln damit ich das programm auch beenden kann danke und gruss, buk
buk Geschrieben 9. Dezember 2009 Autor Geschrieben 9. Dezember 2009 guude, falls es jmd interessiert wie man einem contextMenue menuItems hinzufuegt ... das contextMenue erstellen private: System::Windows::Forms::ContextMenu^ notifyIconContextMenue; das contextMenue initialisieren this->notifyIconContextMenue = (gcnew System::Windows::Forms::ContextMenu()); das contextMenue dem notifyIcon hinzufuegen this->notifyIcon1->ContextMenu = notifyIconContextMenue; das contextMenue befuellen notifyIconContextMenue->MenuItems->Add("&Exit"); ich hoffe ich hab das richtig kommentiert. wenn nun einer weiss wie ich ein Application.Exit() ausfuehren kann wenn ich auf Exit im contextMenue klicke, wuerde ich mich freuen wenn derjenige das hier posten wuerde. danke und gruss, buk
buk Geschrieben 11. Dezember 2009 Autor Geschrieben 11. Dezember 2009 guude, ich habe das ganze etwas abgewandelt: das menuItem wird erstellt MenuItem^ menueItemExit = gcnew MenuItem(); dem menuItem wird ein Text zugewiesen menueItemExit->Text = "&Exit"; das menuItem wird dem contextMenu hinzugefuegt notifyIconContextMenue->MenuItems->Add(menueItemExit); ich nehme mal stark an das ich nun meinen menue Punkt ueber menueItemExit ansteuern kann und in diesem fall z.b. das programm mit Application::Exit() beenden kann. regards, buk
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden