www.mikrocontroller.net

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


Autor: xxx (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Frank Link (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: xxx (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Bernd H. (geeky)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einfach das KeyDown Event der Textbox behandeln.
Irgendwie sowas:

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

Autor: xxx (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Bernd H. (geeky)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: xxx (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht 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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.