Exit_Button mit messagebox..!
-
Ich mein wie sieht der quellcode in c++ windows formanwedung aus
-
Hier der Code für C++/CLI
//Form closing
private: System::Void Form1_FormClosing(System::Object^ sender, System::Windows::Forms::FormClosingEventArgs^ e) { if (MessageBox::Show("Wirklich beenden?", "Beenden", MessageBoxButtons::YesNo, MessageBoxIcon::Question, MessageBoxDefaultButton::Button2) == ::System::Windows::Forms::DialogResult::No) { e->Cancel = true; } }
//Button Exit
private: System::Void exit_Button_Click(System::Object^ sender, System::EventArgs^ e) { Close(); }
Wenn Du "::System::Windows::Forms::DialogResult" nicht so schreiben möchtest, musst Du die namespace Global vereinbaren....
Von lokal...
#pragma once namespace klpm { using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Windows::Forms; using namespace System::Data; using namespace System::Drawing;
In Global...
#pragma once using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Windows::Forms; using namespace System::Data; using namespace System::Drawing; namespace klpm {
Dann sieht der Code für die Abfrage so aus..
if (MessageBox::Show("Wirklich beenden?", "Beenden", MessageBoxButtons::YesNo, MessageBoxIcon::Question, MessageBoxDefaultButton::Button2) == ::DialogResult::No) { e->Cancel = true; }
Gruß, Doug_HH :xmas2:
-
Abgesehen davon das der Code trivial war und der Fragesteller selbst hätte bemühen können: Warum schiebst Du alles in den globalen Namensraum wenn Dir einer reichen würde ?
-
Richtig.
Hatte alle hoch geschoben
Asche auf mein Haupt.#pragma once using namespace System::Windows::Forms; namespace klpm { using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Data; using namespace System::Drawing;
So wäre es vernüftiger.
Und die Aufgabe hätte er mit ein wenig Fleißarbeit selber hinbekommen.
Das ist ja nix dickes. :xmas2:
-
Hätte er insgesamt geschafft, die Aufgabe war Trivial. Wenn man sich dann aber schon wichtig machen will, dann bitte mit einem korrektem Ergebnis.
-
Doug_HH schrieb:
Hier der Code für C++/CLI
if (MessageBox::Show("Wirklich beenden?", "Beenden", MessageBoxButtons::YesNo, MessageBoxIcon::Question, MessageBoxDefaultButton::Button2) == ::System::Windows::Forms::DialogResult::No) { e->Cancel = true; } }
e->Cancel = true; funktioniert nicht : Fehler 4 error C2039: 'Cancel': Ist kein Element von 'System::EventArgs'
-
Bemühst du dich eigentlich das Problem selbst zu lösen oder sollen wir hier für dich die "Drecksarbeit" erledigen?
-
O.o natürlich bemüh ich mich ich versteh das nur nich warum da jetzt ein fehler is... ich hab die CLI Programierung noch nicht so lange in der schule... man man man. nur weil man mal fragt wird man hier gleich angeblufft
-
Aus Deinen Fragen geht hervor, das Du Dir keine Gedanken machst und null Eigeninitiative bringst.
Dough hat Dir bereits den vollständigen Code geliefert - der auch lauffähig ist. Scheinbar hat aber nicht mal das Copy and Paste geklappt.
-
1. Überlege ich selbst ob ich eine Lösung für mein Problem finde.
2. Ich befrage die MSDN.
3. Ich benutze Google.
4. Ich frage im Forum.So läuft es und nicht umgekehrt.
Aber ich will ja mal nicht so sein:
http://msdn.microsoft.com/en-us/library/fdwb3fd7(VS.80).aspx (Bekommst du auch wenn du in VS bei markiertem Fehler 'F1' drückst)
http://msdn.microsoft.com/en-us/library/system.eventargs_members.aspx
http://msdn.microsoft.com/en-us/library/system.componentmodel.canceleventargs_members.aspx