tutorials.de Buch-Aktion 02/2012
Like Tree2Danke
  • 1 Beitrag von badday
  • 1 Beitrag von CPoly
ERLEDIGT
JA
ANTWORTEN
10
ZUGRIFFE
1332
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von brunlorenz
    brunlorenz brunlorenz ist offline *C* & Windows-Freak
    Registriert seit
    May 2010
    Ort
    Zürich (Schweiz)
    Beiträge
    206
    Hallo, ich öffne in meinem Programm mit ShowDialog eine Form.
    Diese möchte ich, wenn auf "OK" gedrückt wird, wieder schliessen.
    Nur weiss ich nicht, wie man eine Form wieder versteckt
     
    Mein System: Windows 7 64bit, Visual Studio 2010 C++, Ubuntu 10.04, Anjuta (Ich programmiere vorwiegend in Windows)
    Programmiersprache: C
    Wenn mein Beitrag geholfen oder sonst gut war, freue ich mich immer über eine Bewertung oder ein Danke!
    Meine Homepage

  2. #2
    badday badday ist offline Mitglied Brokat
    Registriert seit
    Dec 2009
    Beiträge
    321
    Blog-Einträge
    1
    Hier hast du einen Überblick an Funktionen, u. a. Hide() http://msdn.microsoft.com/de-de/libr...=VS.80%29.aspx
    Bei weiteren Fragen, bitte erst

    Gruß,

    badday
    brunlorenz bedankt sich. 
    Galaxy under Fire - 24/7 Online-Real-Time-Strategy-Game - servers are already running - Wir suchen einen Texturier für 3D-Modelle (bei Interesse einfach PM ;) )

  3. #3
    CPoly CPoly ist offline Mitglied Weizenbier
    tutorials.de Premium-User
    Registriert seit
    Sep 2009
    Beiträge
    2.257
    Am einfachstes ist es, wenn du diesen OK-Button auch als solchen kennzeichnest.
    http://msdn.microsoft.com/en-us/libr...eptbutton.aspx
    Wenn du die "AcceptButton"-Eigenschaft der Form auf den Button setzt (geht auch im Eigenschafts-Fenster in VS), wird der Dialog beim Klick darauf mit "DialogResult.OK" geschlossen.

    Wenn du es selbst machen willst, musst du im Click-Handler des Buttons die Form mit "this.Close()" schließen und vorher am besten noch "DialogResult.OK" setzen.

    Und bei solchen Fragen schadet ein Blick in die Dokumentation nie!
    http://msdn.microsoft.com/en-us/libr...orms.form.aspx
    brunlorenz bedankt sich. 

  4. #4
    Avatar von brunlorenz
    brunlorenz brunlorenz ist offline *C* & Windows-Freak
    Registriert seit
    May 2010
    Ort
    Zürich (Schweiz)
    Beiträge
    206
    OK, aber es schliesst nicht
    ich habe Close und AcceptButton versucht,
    bei beiden passiert nichts
    Grüsse,
    Lorenz
     
    Mein System: Windows 7 64bit, Visual Studio 2010 C++, Ubuntu 10.04, Anjuta (Ich programmiere vorwiegend in Windows)
    Programmiersprache: C
    Wenn mein Beitrag geholfen oder sonst gut war, freue ich mich immer über eine Bewertung oder ein Danke!
    Meine Homepage

  5. #5
    badday badday ist offline Mitglied Brokat
    Registriert seit
    Dec 2009
    Beiträge
    321
    Blog-Einträge
    1
    Bisweilen wäre etwas Code von Vorteil.

    Gruß,

    badday
     
    Galaxy under Fire - 24/7 Online-Real-Time-Strategy-Game - servers are already running - Wir suchen einen Texturier für 3D-Modelle (bei Interesse einfach PM ;) )

  6. #6
    _GST_ Tutorials.de Gastzugang
    Also grundsätzlich ist die System.Windows.Forms.Form.Close()-Methode die richtige Variante. Damit natürlich was aufgerufen wird in deinem Button musst du erstmal dem sagen, welche Funktion denn beim Klicken aufgerufen werden soll. Dazu gehst du in den Designer, drückst auf den Button, bei den Properties gehst du oben auf den gelben Pfeil und da findest du auch das Ereignis "Click". Da doppelklickst du in das leere Feld und eine Methode wird generiert. Darin kannst du jetzt Close() schreiben. (Einfachere Möglichkeit: Doppelklick auf den Button im Designer machen, da Click das Standardereignis für den Designer ist bei Buttons).

    PS:
    Da es sich hier um .NET handelt bist du wohl da im Bereich .NET Windows Forms besser aufgehoben
     

  7. #7
    Avatar von brunlorenz
    brunlorenz brunlorenz ist offline *C* & Windows-Freak
    Registriert seit
    May 2010
    Ort
    Zürich (Schweiz)
    Beiträge
    206
    Da habe ich was vergessen: ich arbeite mit Microsoft Visual C++ 2010 Express, schreibe also C++!
     
    Mein System: Windows 7 64bit, Visual Studio 2010 C++, Ubuntu 10.04, Anjuta (Ich programmiere vorwiegend in Windows)
    Programmiersprache: C
    Wenn mein Beitrag geholfen oder sonst gut war, freue ich mich immer über eine Bewertung oder ein Danke!
    Meine Homepage

  8. #8
    Avatar von brunlorenz
    brunlorenz brunlorenz ist offline *C* & Windows-Freak
    Registriert seit
    May 2010
    Ort
    Zürich (Schweiz)
    Beiträge
    206
    Der Code:
    Code cpp:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    
                this->button1->Location = System::Drawing::Point(16, 55);
                this->button1->Name = L"button1";
                this->button1->Size = System::Drawing::Size(75, 23);
                this->button1->TabIndex = 1;
                this->button1->Text = L"OK";
                this->button1->UseVisualStyleBackColor = true;
                this->button1->Click += gcnew System::EventHandler(this, &Eigenschaften::label1_Click);
                // 
                // Eigenschaften
                // 
                this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
                this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
                this->AutoSize = true;
                this->ClientSize = System::Drawing::Size(127, 84);
                this->ControlBox = false;
                this->Controls->Add(this->button1);
                this->Controls->Add(this->label1);
                this->MaximumSize = System::Drawing::Size(143, 122);
                this->MinimumSize = System::Drawing::Size(143, 122);
                this->Name = L"Eigenschaften";
                this->Text = L"Eigenschaften";
                this->Load += gcnew System::EventHandler(this, &Eigenschaften::Eigenschaften_Load);
                this->ResumeLayout(false);
                this->PerformLayout();
                this->AcceptButton=button1;
     
    Mein System: Windows 7 64bit, Visual Studio 2010 C++, Ubuntu 10.04, Anjuta (Ich programmiere vorwiegend in Windows)
    Programmiersprache: C
    Wenn mein Beitrag geholfen oder sonst gut war, freue ich mich immer über eine Bewertung oder ein Danke!
    Meine Homepage

  9. #9
    _GST_ Tutorials.de Gastzugang
    Nein, du verwendest nicht direkt C++. Was du verwendest ist die C++-Variante von .NET

    Komisch an deinem Code ist die folgende Zeile:
    Code cpp:
    1
    
    this->button1->Click += gcnew System::EventHandler(this, &Eigenschaften::label1_Click);

    Beim Klicken auf den Button1 wird also die label1_Click-Funktion ausgeführt? Wie sieht die denn aus?
     

  10. #10
    Avatar von brunlorenz
    brunlorenz brunlorenz ist offline *C* & Windows-Freak
    Registriert seit
    May 2010
    Ort
    Zürich (Schweiz)
    Beiträge
    206
    Da steht nichts drin
    Das passierte wahrscheinlich aus Versehen
     
    Mein System: Windows 7 64bit, Visual Studio 2010 C++, Ubuntu 10.04, Anjuta (Ich programmiere vorwiegend in Windows)
    Programmiersprache: C
    Wenn mein Beitrag geholfen oder sonst gut war, freue ich mich immer über eine Bewertung oder ein Danke!
    Meine Homepage

  11. #11
    Avatar von brunlorenz
    brunlorenz brunlorenz ist offline *C* & Windows-Freak
    Registriert seit
    May 2010
    Ort
    Zürich (Schweiz)
    Beiträge
    206
    Ich habs mit this->Close(); in der Label1_Click lösen können
    Danke
     
    Mein System: Windows 7 64bit, Visual Studio 2010 C++, Ubuntu 10.04, Anjuta (Ich programmiere vorwiegend in Windows)
    Programmiersprache: C
    Wenn mein Beitrag geholfen oder sonst gut war, freue ich mich immer über eine Bewertung oder ein Danke!
    Meine Homepage

Ähnliche Themen

  1. Visual Basic 2010 Express - Rückwärtssuche
    Von VB2010_ExpressUser im Forum .NET Windows Forms
    Antworten: 6
    Letzter Beitrag: 14.11.10, 13:20
  2. Antworten: 0
    Letzter Beitrag: 14.10.10, 16:45
  3. [C] Fehler C2143 in VS 2010 Express
    Von brunlorenz im Forum C/C++
    Antworten: 5
    Letzter Beitrag: 28.06.10, 11:53
  4. Access Anbindung an VB Express 2010
    Von newbee10atvb10 im Forum .NET Datenverwaltung
    Antworten: 3
    Letzter Beitrag: 18.05.10, 20:12
  5. Form1.showDialog > wie schliessen?
    Von F_P_aus_K im Forum .NET Archiv
    Antworten: 3
    Letzter Beitrag: 17.03.04, 21:35