Autor Beitrag
pacours
Hält's aus hier
Beiträge: 14



BeitragVerfasst: So 20.03.11 20:14 
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
private void textBox1_KeyDown(object sender, KeyEventArgs e)
        {
            

            if (e.KeyCode == Keys.A);
            {
                textBox1.Text = "b";
            }

            
        }


die fehlermeldung ist:

Error 2 'WindowsFormsApplication1.Form1' does not contain a definition for 'textBox1_TextChanged' and no extension method 'textBox1_TextChanged' accepting a first argument of type 'WindowsFormsApplication1.Form1' could be found (are you missing a using directive or an assembly reference?)

ich mach noch nicht lange sachen mit csharp. könnt ihr mir weiterhelfen?

Moderiert von user profile iconKha: C#-Tags hinzugefügt
Trashkid2000
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 561
Erhaltene Danke: 137



BeitragVerfasst: So 20.03.11 20:48 
Hi,
ist Dir schonmal aufgefallen, dass Du ein Semikolon hinter dem if hast?
user profile iconpacours hat folgendes geschrieben Zum zitierten Posting springen:

ausblenden C#-Quelltext
1:
2:
3:
4:
if (e.KeyCode == Keys.A);
{
  textBox1.Text = "b";
}

Aber Visual Studio gibt dabei auch eine Warnung aus:
ausblenden Quelltext
1:
Möglicherweise falsche leere Anweisung.					
Also lerne, Fehlermeldungen bzw. Warnungen richtig zu interpretieren!
Marko
pacours Threadstarter
Hält's aus hier
Beiträge: 14



BeitragVerfasst: So 20.03.11 22:02 
Ja ich hab das auf English und ich versteh das zwar aber wenn es nur als Warnung angezeiggt wird achte ich da wenig drauf. Aber du hast recht ich sollte selbst auf Warnungen besser achten :)
pacours Threadstarter
Hält's aus hier
Beiträge: 14



BeitragVerfasst: So 20.03.11 22:07 
helfen tuts trotzdem nicht
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19315
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: So 20.03.11 22:36 
Der Code ist so jedenfalls ansonsten korrekt soweit ich das sehe, insofern muss der Fehler woanders stecken, vielleicht steht der an der falschen Stelle oder so.

Oder versuchst du die Funktion irgendwo manuell aufzurufen oder so? Wie sieht denn der restliche Code aus und wo genau kommt die Fehlermeldung?
pacours Threadstarter
Hält's aus hier
Beiträge: 14



BeitragVerfasst: So 20.03.11 22:54 
Ok den Fehler hab ich wegbekommen. Ich habe vergessen im Designer was zu ändern. Aber jetzt hab ich das nächste problem: wenn ich "a" schreibe um "b" zu erhalten steht da "ab". Wie kann ich machen das da nur "b" steht?
Yogu
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2598
Erhaltene Danke: 156

Ubuntu 13.04, Win 7
C# (VS 2013)
BeitragVerfasst: Mo 21.03.11 09:35 
Soweit ich weiß, musst du nur die Eigenschaft Handled des e-Parameters auf true setzen, um zu signalisieren, dass du den Tastendruck bereits verarbeitet hast und die eigentliche Aktion nicht ausgeführt werden soll.
pacours Threadstarter
Hält's aus hier
Beiträge: 14



BeitragVerfasst: Mo 21.03.11 18:36 
e.Handled = (true);

hilft dabei garnichts wenn du das meinst
Yogu
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2598
Erhaltene Danke: 156

Ubuntu 13.04, Win 7
C# (VS 2013)
BeitragVerfasst: Mo 21.03.11 21:52 
Ok, du musst das Ereignis KeyPress verwenden. Das macht auch Sinn, denn dann wird "b" auch mehrmals hintereinander eingefügt, wenn du die Taste gedrückt hältst.
pacours Threadstarter
Hält's aus hier
Beiträge: 14



BeitragVerfasst: Mo 21.03.11 23:30 
was meinst du damit? Entschuldigung meine unwissenheit ich mach das noch nicht lange
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19315
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mo 21.03.11 23:57 
Naja wie meinst du das? Du nimmst eben statt KeyDown das Ereignis KeyPress. :gruebel:
pacours Threadstarter
Hält's aus hier
Beiträge: 14



BeitragVerfasst: Di 22.03.11 14:18 
Ja das dachte ich auch aber das hat auch nicht geklappt deswegen hab ich mich gefragt ob du das meintest.

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
 private void textBox1_KeyPress(object sender, KeyEventArgs e)
        {
            
            
            if (e.KeyCode == Keys.A)
            {
                

                textBox1.Text += "o"//3 18
            }
            if (e.KeyCode == Keys.B)
            {

                textBox1.Text += "x";
            }

Form Designer
ausblenden C#-Quelltext
1:
this.textBox1.KeyDown += this.textBox1_KeyPress;					


hilft dir das vielleicht?

Moderiert von user profile iconChristian S.: C#-Tags hinzugefügt
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19315
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Di 22.03.11 14:41 
Und wo setzt du e.Handled?
pacours Threadstarter
Hält's aus hier
Beiträge: 14



BeitragVerfasst: Di 22.03.11 15:55 
Achso das hab ich da kurz rausgenommen um zu gucken ob das was verändert

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
private void textBox1_KeyPress(object sender, KeyEventArgs e)
        {
            
            e.Handled = (true);
            if (e.KeyCode == Keys.A)
            {
                

                textBox1.Text += "o"//3 18
            }
            if (e.KeyCode == Keys.B)
            {

                textBox1.Text += "x";
            }
        }


Moderiert von user profile iconChristian S.: C#-Tags hinzugefügt
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19315
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Di 22.03.11 16:05 
Der Code kann doch so gar nicht kompilierbar sein, da es KeyCode nur bei KeyDown und KeyUp gibt... :roll:
Bei KeyPress heißt es KeyChar, und damit geht es auch.
bakachan
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 503
Erhaltene Danke: 34

W7 (x64) Ultimate
C# / VB.NET (VS2010 Ultimate)
BeitragVerfasst: Di 22.03.11 16:12 
user profile iconpacours hat folgendes geschrieben Zum zitierten Posting springen:

Form Designer
ausblenden C#-Quelltext
1:
this.textBox1.KeyDown += this.textBox1_KeyPress;					


Du musst natürlich auch das KeyPress-Event verwenden und nicht einfach deine Funktion umbenennen.
pacours Threadstarter
Hält's aus hier
Beiträge: 14



BeitragVerfasst: Di 22.03.11 17:29 
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
private void textBox1_KeyPress(object sender, KeyEventArgs e)
        {

            e.Handled = (true);
            if (e.KeyChar == Keys.A)
            {


                textBox1.Text += "o"//3 18
            }
            if (e.KeyChar == Keys.B)
            {

                textBox1.Text += "x";
            }

klappt immernoch nicht
ausblenden C#-Quelltext
1:
 this.textBox1.KeyDown += this.textBox1_KeyPress;					


Moderiert von user profile iconChristian S.: C#-Tags hinzugefügt
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19315
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Di 22.03.11 18:49 
user profile iconpacours hat folgendes geschrieben Zum zitierten Posting springen:
klappt immernoch nicht
ausblenden C#-Quelltext
1:
 this.textBox1.KeyDown += this.textBox1_KeyPress;					
Wie jetzt? user profile iconbakachan hat doch gerade geschrieben, dass du auch das KeyPress Event benutzen musst. Und dann postest du den Code aus dem Designer, in dem du weiter KeyDown verwendest und wunderst dich, dass es nicht geht? :nut:
pacours Threadstarter
Hält's aus hier
Beiträge: 14



BeitragVerfasst: Di 22.03.11 19:24 
ja wenn ich aber
this.textBox1.KeyPress += this.textBox1_KeyPress;
schreibe kommen noch mehr errors
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Di 22.03.11 19:57 
user profile iconpacours hat folgendes geschrieben Zum zitierten Posting springen:
schreibe kommen noch mehr errors
Und die sind geheim? Oder zu viel Arbeit, diese zu posten? :roll:

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".