Forum: PC-Programmierung VC++ Form anwendungen Grundlegende dinge


von xxx (Gast)


Lesenswert?

Hallo!

Ich habe folgendes Problem:

Auf meiner Form sind eine RichTextBox eine Textbox und ein Button.

Jetzt will ich einen Text aus der textbox einlesen, um es durch drücken 
der ENTER-Taste in der RichTextBox auszugeben.

Ich habe es derweil nur hinbekommen, dass das Programm jedes einzelne 
Zeichen das ich eingebe, sofort in der Richtextbox ausgibt.


Ich danke schonmal,

xxx

von Frank Link (Gast)


Lesenswert?

Hallo xxx,
Du hast Dich wahrscheinlich an den OnChange-Event des Controlls 
gehangen.
Leider kenne ich in VC++ nicht alle möglichen Events die ein Control 
hat. In unseren Bibliotheken benutzen wir den onEditValueChanged-Event, 
der nur dann ausgelöst wird, wenn das Control verlassen wird, oder die 
Enter-Taste gedrückt wird.

Alternativ dazu, würde ich den onKeyPress-Event verwenden. In dem kannst 
Du auf jede beliebige Taste reagieren und bei ENTER den gesamten Inhalt 
kopieren.

Gruss
Frank

von xxx (Gast)


Lesenswert?

ok... Das habe ich jetzt nicht ganz so verstanden. Sorry.

Ich werde mich noch einmal mit den Events auseinander setzen, schreibe 
trotzdem mal lieber den pseudocode, wie ich es machen wollte, hier hin:

>> While (!Enter = gedrueckt)
>> {
>>    tue das und das;
>> }

Wie schreibe ich denn den Code in VC++ ?

Kann mir einer noch mal helfen?

Danke, Gruß
moony

von Bernd H. (geeky)


Lesenswert?

Einfach das KeyDown Event der Textbox behandeln.
Irgendwie sowas:

if (e.KeyCode==Keys.Enter)
{
   // Ins RichEdit kopieren
}

von xxx (Gast)


Lesenswert?

Hallo

Ich habe das jetzt mal ausprobiert, aber wenn ich compilieren lasse, 
dann zeigt er mir diesen Fatal error.

fatal error C1001: Interner Compilerfehler.

Was habe ich denn jetzt falsch gemacht? Ich habe einfach deinen Code in 
mein Programm kopiert, und die Zeile:

>> // Ins RichEdit kopieren

durch die hier ersetzt:

Eingabefenster->Text = Eingabetextbox->Text;


habe ich jetzt noch irgentetwas vergessen?

Danke, Gruß

xxx

von Bernd H. (geeky)


Lesenswert?

...der Code ist als Pseudo-Code zu verstehen ;D
Ich nutze Windows.Forms nur von C# aus - k.A. wie das genau unter C++ 
aussieht ;D

von xxx (Gast)


Lesenswert?

Ach so. :)

Kann mir ein anderer vll helfen?

Gibt es überhaupt einen befehl, mit dem ich es so schreiben kann wie 
oben geschrieben?

Gruß

xxx

von Karl H. (kbuchegg)


Lesenswert?

Das Problem ist, dass du nicht einen Befehl suchst, sondern
eine komplette Befehlssequenz und nicht verstehst wie sich
diese Sequenz zusammensetzt.

Du solltest dir Literatur zum Thema "Forms mit VC++" besorgen.
Ich denke nicht, dass hier einer Lust haben wird, dir ein
komplettes Tutorial zu diesem Thema zu schreiben.

Literatur ist sicherlich die beste Option.
Eine andere ist es, http://www.codeproject.com zu durchstöbern.
Auch http://www.codeguru.com ist einen Besuch wert.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.