myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
» Regeln
» Wie poste ich richtig?
» Forum-FAQ

Mitglieder
» Liste / Suche
» Wer ist wo online?

Ressourcen
» openbook: Visual C#
» openbook: OO
» Microsoft Docs

Team
» Kontakt
» Übersicht
» Wir über uns

» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Entwicklung » Grundlagen von C# » Mithilfe von Enter eine Methode ausführen
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

Mithilfe von Enter eine Methode ausführen

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
SilverStorm SilverStorm ist männlich
myCSharp.de-Mitglied

Dabei seit: 02.11.2018
Beiträge: 2
Entwicklungsumgebung: VC# 2008 Express Edition


SilverStorm ist offline

Mithilfe von Enter eine Methode ausführen

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo MyCSharpForum,
momentan arbeite ich schon sehr lange an einem Programm, welches ein Lottospiel simuliert in C# 2008 Express Edition auf Windows 10. Dabei bin ich aber gerade bei einem Punkt angelangt, wo mir so langsam die Ideen ausgehen, mein Problem zu lösen.

Ich möchte gerne, dass mein Programm, nachdem ich die Taste Enter gedrückt habe, meine Methode ausführt. Um euch nicht zu verwirren, stelle ich hier mal nur diesen Teil des Programms dar, wo das Problem liegt:

C#-Code:
void TippEnde()
{
txtZahl1.Enabled = false;
txtZahl2.Enabled = false;
txtZahl3.Enabled = false;
txtZahl4.Enabled = false;
txtZahl5.Enabled = false;
txtZahl6.Enabled = false;
cmdTipp.Visible = false;
cmdLottozahlen.Visible = true;
}
//in einer anderen Methode, was bei mir nicht funktioniert:
AcceptButton = TippEnde();

txt= Textbox
cmd = (command) button
Zahl1, Zahl2... sind zwar keine aussagekräftigen Variablen, aber in diesem Fall verwende ich sie für die die Zahlen, welche als Tipp abgegeben werden in die jeweilige der 6 Textboxen.

Vielleicht weiß ja jemand von euch, wie ich das programmieren kann, sodass beim Drücken von Enter die void TippEnde() ausgeführt wird.

-SilverStorm

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von SilverStorm am 03.11.2018 15:00.

03.11.2018 14:10 Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

avatar-4119.png


Dabei seit: 20.07.2008
Beiträge: 13.262
Herkunft: Stuttgart/Stockholm


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Jedes Control (zB TextBox) hat ein KeyDown-Event.
Das musst abonnieren, prüfen ob der Key eben Enter (=> Return) ist und dann Deine Methode ausführen.
03.11.2018 16:20 Beiträge des Benutzers | zu Buddylist hinzufügen
SilverStorm SilverStorm ist männlich
myCSharp.de-Mitglied

Dabei seit: 02.11.2018
Beiträge: 2
Entwicklungsumgebung: VC# 2008 Express Edition

Themenstarter Thema begonnen von SilverStorm

SilverStorm ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Abt Danke für die Antwort, doch leider bin ich mit meinen Programmierkenntnissen noch nicht so weit, wie du beschrieben hast. Und ich will ja das auch nicht bezogen auf eine Textbox ausführen, also etwas ausrechnen in nee Textbox. Ich will einfach nur, dass die Methode Void TippEnde dann in der anderen ausgeführt wird, wenn ich Enter drücke.

Falls du denkst, dass deine Variante damit auch funktionieren würde, dann würde ich mich sehr freuen, wenn du dir einmal kurz Zeit nehmen würdest und mir das als CSharp Code aufschreiben könntest, so wie es auch in der Forms Anwendung geschrieben wird.

MfG Silver
03.11.2018 17:27 Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

avatar-4119.png


Dabei seit: 20.07.2008
Beiträge: 13.262
Herkunft: Stuttgart/Stockholm


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Das Forum ist eine Hilfe zur Selbsthilfe.
Und gewisse Dinge - wie Grundlagen - lernt man am effizientesten selbst.
 [FAQ] Wie finde ich den Einstieg in C#?
Aber das ist nicht schlimm, wir haben alle klein angefangen.

Wenn ich Dir den Code schreibe, dann hast Du Code der funktioniert - aber nichts gelernt, weil Du den Code nicht verstehst.
Das ist nicht Sinn der Sache ;-) Davon abgesehen ist es nicht die Aufgabe von uns Dir fertige Lösungen zu liefern. Das Forum ist kein kostenloser Code-Generator ;)

PS:  [Hinweis] Wie poste ich richtig?
Ist hier nicht so gern gesehen, wenn man nach fertigen Lösungen fragt und quasi die Arbeit auf andere abwälzt ;-)
03.11.2018 21:42 Beiträge des Benutzers | zu Buddylist hinzufügen
Taipi88 Taipi88 ist männlich
myCSharp.de-Mitglied

avatar-3220.jpg


Dabei seit: 02.02.2010
Beiträge: 989
Entwicklungsumgebung: VS 2010
Herkunft: Mainz


Taipi88 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hi SilverStorm,

es gibt mehrere Wege die dich hier zum Ziel bringen können.

1. Accept-Button
Der Accept-Button ist ein Property auf deiner Form, das als Wert tatsächlich einen Button erwartet - und nicht wie deinerseits übergeben eine Methode. Um dein Problem über den Accept-Button zu lösen - musst du einen Button haben, der deine Methode bei "OnClick" ausführt. Dann kannst du "AcceptButton = myButton;" schreiben.

2. Abt's Variante
Da ich davon ausgehe, dass du ohnehin einen "Fertig"/"Absenden"-Button irgendwo hast - würde ich dir ehrlich gesagt die Vorgehensweise mit dem Accept-Button empfehlen. Falls du das nicht hast und auch nicht willst - musst du die Tastatureingaben eben selbst behandeln - dafür gibt's ne Doku.

Grundlegend musst du verstehen: Du drückst zwar <Enter> - aber im Standard bekommt das erstmal nur das fokussierte Control (hier wohl eine TextBox) mit. Wenn das so nicht gewollt ist - musst du deine Form entsprechend einstellen. (vgl. "KeyPreview")

Ein Beispiel wie man Tastatureingaben im Formular selbst (deiner Form) behandelt - findest du z.B. hier:  https://docs.microsoft.com/de-de/dotnet/...the-form-level´

Den Code wird dir hier niemand schreiben, hier gibt's immer nur Hilfe zur Selbsthilfe. (Und das ist gut so - denn wenn du nicht weißt, wie man die Ereignisse von Controls behandelt - ist es für dich an der Zeit einen Blick in die Doku zu werfen)

LG
05.11.2018 09:07 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum Der Startbeitrag ist älter als ein Jahr.
Der letzte Beitrag ist älter als ein Jahr.
Antwort erstellen


© Copyright 2003-2019 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 15.12.2019 04:17