Einen Eintrag aus der Combobox auslesen


Wenn Sie sich das Beispielprogramm anschauen, dann werden Sie bemerken, dass Ihnen in einem Label oben rechts der jeweils aktuell ausgewählte Eintrag der Combobox angezeigt wird. Dazu wird die Nachricht "CBN_SELCHANGE" bearbeitet. Sie ist ein Zeichen, dass sich die Auswahl der Combobox geändert hat. Mit der Nachricht "CB_GETLBTEXT" kann man dann den Text auslesen. Vorher ist natürlich wieder der Index des markierten Eintrags zu erfragen. Der Auszug zeigt Ihnen wie es geht:

WM_COMMAND:
  case hiword(wParam) of
    {Combobox-Auswahl geändert}
    CBN_SELCHANGE:
      case loword(wParam) of
        IDC_CB:
          begin
            {Index holen}
            i := SendMessage(hCB, CB_GETCURSEL, i, 0);
            if(i <> CB_ERR) then
            begin
              {Label aktualisieren}
              Sendmessage (hCB, CB_GETLBTEXT, i, Integer(@buffer));
              SendMessage (hSelItem, WM_SETTEXT, 0, Integer(@buffer));
{Löschen-Button aktivieren} EnableWindow(hDel,true); end; end; end; end;