C++ Editfeldinhalt Variable zuweisen



  • Also, ich bin momentan an nem etwas größeren C++ Projekt.
    Aber, es ist mein erstes Windows C++ Programm, davor hab ich alle für DOS geschrieben und daher irgendwie mehr Probleme als alles andere -.-"

    Aktuell versuch ich den Inhalt eine Editfeldes einer Variable zuzuordnen (mein Versuch

    Name = Form2 -> Charaname -> Caption;

    Name ist ne public deklarierte Variable (AnsiString)
    Funzt nicht, Fehlermeldung:
    Zugriff auf TControll::Caption nicht möglich?!?

    Achso, und wie kann man den Inhalt einer Variable in ein Label schreiben?

    Anmerkung: Bring das C++ momentan fast komplett selbst bei, AnsiC++ dabei komplett ohne Buch oder Anleitung, vermute aber das das reines WinAPI ist. Compiler ist der Borland C++ Professional, hab den vom Lehrer (lern grad ITA; machen aber eigentlich Delphi in der Schule oder sollten machen).

    mfg

    Virus



  • wenn ich dich richtig verstehe hast du nen edit feld und willst da nen string übergeben?

    das machst du in WinApi am besten mit SetWindowText( hEdit, TEXT( "Dein Text"));



  • melissavirus schrieb:

    Anmerkung: Bring das C++ momentan fast komplett selbst bei, AnsiC++ dabei komplett ohne Buch oder Anleitung, vermute aber das das reines WinAPI ist. Compiler ist der Borland C++ Professional, hab den vom Lehrer (lern grad ITA; machen aber eigentlich Delphi in der Schule oder sollten machen).

    du vermutest falsch. das ist kein winapi sondern vcl.



  • Nein, ich hab ein Editfeld in das was reingeschrieben wurde/ werden soll (vom Programmnutzer) und das soll an die Variable Name übergeben werden..

    Bei Delphi n Kinderspiel, bei AnsiC++ scheints wohl anders zu funktionieren -.-



  • miller_m schrieb:

    melissavirus schrieb:

    Anmerkung: Bring das C++ momentan fast komplett selbst bei, AnsiC++ dabei komplett ohne Buch oder Anleitung, vermute aber das das reines WinAPI ist. Compiler ist der Borland C++ Professional, hab den vom Lehrer (lern grad ITA; machen aber eigentlich Delphi in der Schule oder sollten machen).

    du vermutest falsch. das ist kein winapi sondern vcl.

    gut zu wissen... 🙄



  • axo axo

    das genauso easy

    char cText_[50];

    GetWindowText( hEdit, cText_, sizeof( cText_));



  • hm... also bei mir dann so (Charaname= das Editfeld)
    GetWindowText(Charaname, Name, sizeof(Name));

    Ergebnis:
    Fehlermeldung Konvertierung von AnsiString zu Char nicht möglich...
    Nur was will der Konvitieren? Name is nu n Char und wenn ich das (wie es war) als AnsiString lass, kommt dieselbe Meldung...
    Oder is der Inhalt von dem Editfeld n AnsiString? O_o



  • MasterCAD schrieb:

    axo axo
    das genauso easy
    char cText_[50];
    GetWindowText( hEdit, cText_, sizeof( cText_));

    afaik hast du unter vcl kein fensterhandle, somit kann das auch nicht funktionieren.

    @melissavirus
    die zuweissung muss rechts stehen
    Form2->Charaname->Caption = Name;



  • jo ich hatte ja auch angenommen er meint winapi ... von vcl hab ich gar keine ahnung ...



  • MasterCAD schrieb:

    von vcl hab ich gar keine ahnung ...

    ich auch nicht 😃



  • miller_m schrieb:

    MasterCAD schrieb:

    axo axo
    das genauso easy
    char cText_[50];
    GetWindowText( hEdit, cText_, sizeof( cText_));

    afaik hast du unter vcl kein fensterhandle, somit kann das auch nicht funktionieren.

    @melissavirus
    die zuweissung muss rechts stehen
    Form2->Charaname->Caption = Name;

    Prima, nu bin ich wieder bei der Ausgangsfehlermeldung... 😞



  • melissavirus schrieb:

    Prima, nu bin ich wieder bei der Ausgangsfehlermeldung... 😞

    wirst wohl warten müssen bis dich ein mod ins vcl forum verschiebt



  • Prima, hab wegen privater Probs nur begrenzt Internet, wenn ich Pech hab kann ich die Lösung dann nimmer lesen, is wohl n Fall von Pech gehabt oder dumm gelaufen (oder so -.-)



  • Dieser Thread wurde von Moderator/in flenders aus dem Forum WinAPI in das Forum VCL/CLX (Borland C++ Builder) verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Hallo

    also... wenn du ein TLabel hast, schreibst du :

    AnsiString Text = Charaname->Caption;
    

    wenn du aber ein TEdit hast, schreibst du :

    AnsiString Text = Charname->Text;
    

    bis bald
    akari



  • klasse, es klappt endlich *freu*

    DANKE!

    Muss ich nurnoch rausfinden wie ich diese Variable nu in nen Label reingeschrieben krieg, aber das dürft (hoffentlich) kein Prob werden (dacht ich hierbei aber auch-.-)



  • Label->Caption = text;



  • mach doch bitte das Texteditor-Tutorial in der BCB-Hilfe durch.
    da wird das wichtigste beschrieben



  • Braunstein schrieb:

    Label->Caption = text;

    Ja, so in der Art hat ich es gemacht, nur das ich ne Combi aus Variable und "anderem Text" (Name: ) dahingeschrieben hatte, und das wollte er nicht *schulterzuck*
    Werds nu n bissl ander lösen *g*



  • Bitte nimm dir BigNeals Rat zu Herzen.
    Ansonsten, falls Fehler auftreten, poste bitte die Fehlermeldung (wenn vorhanden) oder/und den Quellcode (so minimal wie möglich) der den Fehler reproduzieren kann.


Log in to reply