Einzelnen Beitrag anzeigen

Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Frage zur Combobox (csdropdownlist)

  Alt 27. Aug 2006, 07:33
Zitat von polondo:
....Immer wenn ich etwas vom Programm aus in die Combobox füllem möchte ...
Hai polondo,

was verstehst Du denn unter "vom Programm aus"?
Wenn Du etwas zur Leufzeit zu der ComboBox hinzufügen möchtest musst Du den Style ja nicht ändern.
Oder möchtest Du wirklich den Text in der ComboBox ändern? Wenn ja: Möchtest Du diese Änderung dann auch als Eintrag in der ComboBox haben?

Wenn ich auf der Form eine TComboBox, ein TEdit, eine TCheckBox und einen TButton habe kann ich das zum Beispiel so machen:
Delphi-Quellcode:
// Beim klick auf den Button wir der Eintrag aus dem Edit1 zur ComboBox hinzugefügt.
// Unabhängig davon welchen "Style" sie ha
procedure TDemo_Form.btn_AddEdit2ComboBoxClick(Sender: TObject);
begin
  ComboBox1.Items.Add(Edit1.Text);
end;

// Über die CheckBox wird der "Style" der ComboBox geändert.
procedure TDemo_Form.CheckB_ComboBoxStyleClick(Sender: TObject);
begin
  if ((Sender as TCheckBox).Checked) then
  begin
    ComboBox1.Style := csDropDown;
  end
  else
  begin
    ComboBox1.Style := csDropDownList;
  end;
end;

// Wenn die ComboBox editierbar ist (Style = csDropDown) kann der Text geändert werden.
// Beim verlassen der CB wird ein neuer Text zu den Items hinzugefügt.
procedure TDemo_Form.ComboBox1Exit(Sender: TObject);
begin
  with (Sender as TComboBox) do
  begin
    if (Style = csDropDown) then
    begin
      if (Items.IndexOf(Text) = -1) then
      begin
        Items.Add(Text);
      end;
    end;
  end;
end;
Stephan B.
  Mit Zitat antworten Zitat