Wie man das Startformular anfänglich unsichtbar oder versteckt macht

8

Wie man das Startformular anfänglich unsichtbar oder versteckt macht

Ich habe ein GUI-Projekt mit 2 Formular und die Formulare müssen separat angezeigt werden. Wenn Formular 1 angezeigt wird, müssen alle anderen Formulare ausgeblendet werden.

Ich kann alle anderen Formulare ausblenden, aber ich kann das Startformular nicht ausblenden.so, dass das Symbol meiner Anwendung in der Taskleiste angezeigt wird.

Beispielsweise führen Firewall- / Antivirus- und Instant-Messaging-Anwendungen dies aus, um im Hintergrund ausgeführt zu werden und dennoch für den Benutzer über die Taskleiste zugänglich zu sein.

    
amexn 20.07.2010, 09:45
quelle

3 Antworten

5

Ich vermute, dass Sie fragen, wie Sie das Formular nicht in der Taskleiste erscheinen lassen und nur in der Taskleiste angezeigt werden, genau wie eine IM oder ein Anti-Virus?

Wenn ja, setzen Sie einfach die Eigenschaft ShowInTaskbar von Form auf false .

Um das ursprüngliche Formular unsichtbar zu machen, müssen Sie ein verwenden ApplicationContext in Application.Run anstelle des Hauptformulars.

    
GenericTypeTea 20.07.2010, 09:54
quelle
2

Setzen Sie die Eigenschaft ShowInTaskbar auf false und setzen Sie WindowState auf

    
X-Plore-It 25.11.2012 16:28
quelle
1

Microsoft hat dazu eine Webseite geschrieben. Es gibt ein Beispiel für die Verwendung von ApplicationContext . Im Grunde haben Sie statt einer Formularanwendung eine App, die Main() und Main ausführt und dann die Formulare öffnet.

Ссылка

Sie verlieren jedoch auf diese Weise die Funktionalität, weil Sie das "Anwendungsframework" deaktivieren müssen. Es wird Ihr Windows hässlich machen.

Hier ist eine andere Lösung, fast ein Hack, aber nicht so schlecht. Wenn Windows die Formularanwendung startet und Visible auf "True" setzt, wird ein Aufruf von " SetVisibleCore " ausgelöst. Sie können diese Funktion überschreiben. Wenn% ce_de% zum ersten Mal aufgerufen wird, setze es auf false. Von da an pass einfach auf.

Beachten Sie, dass SetVisibleCore nicht beim Start Ihrer App ausgelöst wird, wenn das Formular nicht angezeigt wird, also verschieben Sie den gesamten Code dorthin in Form.Load .

Hier ist die ganze Sache:

%Vor%     
Eyal 16.11.2010 13:01
quelle

Tags und Links