ComboBox per Code steuern
ComboBox per Code steuern
Hallo alle,
drücke ich in einer gefüllten Combobox mit Autovervollständigung z.B. eine Zahl/Char springt diese automatisch auf den 1-sten vorkommenden Eintrag. Wie kann ich dieses "Drücker" per Code auslösen? Ich kann zwar combobox.text mit einer Zahl/Char setzen, aber dann passiert nichts; es wird zu keinem Eintrag gesprungen, es wird nur der eingegebene Char angezeigt...
Danke
Udo
drücke ich in einer gefüllten Combobox mit Autovervollständigung z.B. eine Zahl/Char springt diese automatisch auf den 1-sten vorkommenden Eintrag. Wie kann ich dieses "Drücker" per Code auslösen? Ich kann zwar combobox.text mit einer Zahl/Char setzen, aber dann passiert nichts; es wird zu keinem Eintrag gesprungen, es wird nur der eingegebene Char angezeigt...
Danke
Udo
- fliegermichl
- Lazarusforum e. V.
- Beiträge: 1639
- Registriert: Do 9. Jun 2011, 09:42
- OS, Lazarus, FPC: Lazarus Fixes FPC Stable
- CPU-Target: 32/64Bit
- Wohnort: Echzell
Re: ComboBox per Code steuern
Das geht indem du ComboBox.ItemIndex entsprechend setzt.
- Niesi
- Lazarusforum e. V.
- Beiträge: 581
- Registriert: So 26. Jun 2016, 19:44
- OS, Lazarus, FPC: Linux Mint Cinnamon, Laz 3.9 Fpc 3.2.3 und allerlei mit FpcUpDeLuxe
- Kontaktdaten:
Re: ComboBox per Code steuern
Cool-Tuc hat geschrieben:Hallo alle,
drücke ich in einer gefüllten Combobox mit Autovervollständigung z.B. eine Zahl/Char springt diese automatisch auf den 1-sten vorkommenden Eintrag. Wie kann ich dieses "Drücker" per Code auslösen? Ich kann zwar combobox.text mit einer Zahl/Char setzen, aber dann passiert nichts; es wird zu keinem Eintrag gesprungen, es wird nur der eingegebene Char angezeigt...
Danke
Udo
Code: Alles auswählen
unit Main;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls, Menus;
type
{ TForm1 }
TForm1 = class(TForm)
MainMenu1: TMainMenu;
MenuItem1: TMenuItem;
MenuItem2: TMenuItem;
MenuItem3: TMenuItem;
MenuItem4: TMenuItem;
MenuItem5: TMenuItem;
MenuItem6: TMenuItem;
MyComboBox: TComboBox;
procedure MenuItem2Click(Sender: TObject);
procedure MenuItem3Click(Sender: TObject);
procedure MenuItem4Click(Sender: TObject);
procedure MenuItem6Click(Sender: TObject);
private
public
end;
var
Form1: TForm1;
implementation
{$R *.lfm}
{ TForm1 }
procedure TForm1.MenuItem2Click(Sender: TObject);
begin
MyComboBox.Itemindex := 0;
end;
procedure TForm1.MenuItem3Click(Sender: TObject);
begin
MyComboBox.ItemIndex := 1;
end;
procedure TForm1.MenuItem4Click(Sender: TObject);
begin
MyComboBox.ItemIndex := 2;
end;
procedure TForm1.MenuItem6Click(Sender: TObject);
begin
Close;
end;
end.
Wissen ist das einzige Gut, das sich vermehrt, wenn es geteilt wird ...
Re: ComboBox per Code steuern
...aber ich weiss vorher nicht, wenn ich z.B. ein "u" virtuell "drücke" bei welchem ItemIndex das erste "u" vorkommt um dort hin zu springen...
Re: ComboBox per Code steuern
im onChange die Liste durchlaufen und wenn du einen Wert gefunden hast, den ItemIndex setzen...
Gruß, Michael
Re: ComboBox per Code steuern
OK, so habe ich es jetzt erst einmal implementier...ich dachte man könne einfach combo.text mit einem zeichen setzen und die combo würde zum ersten vorkommenden Eintrag springen.. 

- fliegermichl
- Lazarusforum e. V.
- Beiträge: 1639
- Registriert: Do 9. Jun 2011, 09:42
- OS, Lazarus, FPC: Lazarus Fixes FPC Stable
- CPU-Target: 32/64Bit
- Wohnort: Echzell
Re: ComboBox per Code steuern
Cool-Tuc hat geschrieben:OK, so habe ich es jetzt erst einmal implementier...ich dachte man könne einfach combo.text mit einem zeichen setzen und die combo würde zum ersten vorkommenden Eintrag springen..
Code: Alles auswählen
ComboBox.ItemIndex := ComboBox.Items.IndexOf(ComboBox.Text);