DWORD in einem Memofenster ausgeben lassen



  • Hallo zusammen,

    ich habe über einen Butto folgenden Funktionsaufruf:

    void __fastcall TForm1::Button3Click(TObject *Sender)
    {
        temp = MPUSBGetDLLVersion();
        //printf("Microchip USB API Version: %d.%d\r\n",HIWORD(temp),LOWORD(temp));
    }
    

    Wie kann ich nun die temp-var in der Art in einem Memofenster mir ausgeben lassen?

    Memo1->SetTextBuf("hier soll Inhalt meiner temp-var stehen");
    

    ?

    Muss ich da das DWORD in einen String konvertieren, oder gibt es generell eine Funktion, mit der ich Integer, byte, word, usw. Datentypen mir in einem Memofenster ausgeben lassen kann?

    Vielen Dank für Infos 🙂

    lg,
    blitzgeist



  • Hallo,

    Du solltest deine Variable in einen String konvertieren. Außerdem solltest du statt SetTextBuf besser TMemo::Lines::Add() verwenden.

    int test = 3;
    Memo1->Lines->Add(IntToStr(test));
    


  • Hallo, werde es gleich mal ausprobieren. Aber ich habe ein DWORD und kein INT. Das funktioniert doch dann nicht mit dem Aufruf IntToString, oder doch?

    Zweitens: was ist an dem Methodenaufruf

    Memo1->SetTextBuf("Befehl unbekannt");
    

    nicht gut?

    .
    .
    .

    ...okay das funktioniert ganz gut, aber muss man immer den Umweg über die IntToStr() gehen???

    .
    .
    .

    lg
    blitzgeist



  • 1. Wenn du dir mal die WindowsHeader anschaust wirst du sehen dass DWORD eigentlich ein int ist.
    Also ist IntToStr genau die richtige Funktion.
    Zu deinem Edit:
    Ja muss man.

    2. Für was den Umweg gehen wenns auch einfach geht?
    entweder:

    Memo1->Text="Befehl unbekannt";
    

    oder:

    Memo1->Lines->Add(Befehl unbekannt);
    


  • Okay, danke für die Infos. Hat mir weitergeholfen. 🙂


Anmelden zum Antworten