Форум: "Основная";
Текущий архив: 2002.09.23;
Скачать: [xml.tar.bz2];
ВнизComboBox Найти похожие ветки
← →
Sergey-ZZZ (2002-09-12 14:20) [0]Подскажите. Нужно сделать так чтобы при вводе буквы в ComboBox лист ComboBox скортировался и указатель становился на первое вхождение этой буквы и так по второй и т.д.
← →
Alx2 (2002-09-12 14:49) [1]В D6 такое поведение наблюдается у стандартного комбобокса.
Если хочешь, вышлю stdctrls от D6, где посмотришь как это делается на прмере TCustomComboBox.
← →
Kaban (2002-09-12 14:53) [2]на королевсетве такой компонент видел, что-то типа IECombobox
← →
Smithson (2002-09-12 16:06) [3]У меня это сделано так:
var S,s1: String;
i: Integer;
bBegin
// Если объект не в фокусе - не надо нам клавиатуры!
if not (Sender as TWinControl).Focused then exit;
// Вводят начало строки....... идиоты
if Upper(Sender.ClassName) = "TCOMBOBOX" then begin
// Ну ладно уж....
if (Key = #13) and (TComboBox(Sender).DroppedDown) then begin // Enter нажали
I := TComboBox(Sender).ItemIndex;
TComboBox(Sender).DroppedDown := False;
TComboBox(Sender).Text := TComboBox(Sender).Items[I];
end;
if (Key < " ") then exit;
s1 := TComboBox(Sender).SelText;
S := TComboBox(Sender).Text+Key;
if s1 > "" then begin
System.Delete(S,Pos(s1,s),Length(s1));
end;
if not TComboBox(Sender).DroppedDown then TComboBox(Sender).DroppedDown := True;
for i := 0 to TComboBox(Sender).Items.Count-1 do
if CmpLines(S,TComboBox(Sender).Items[i]) then begin
TComboBox(Sender).ItemIndex := i;
Key := #0;
TComboBox(Sender).Text := S;
TComboBox(Sender).SelStart := 300;
exit;
end;
end;
End;
function CmpLines(L1,L2: String): Boolean; // True, если начало одной строки равно другой
var i, j: Integer;
begin
j := Length(L1);
if j > Length(L2) then j := Length(L2);
Result := False;
if J < 1 then exit;
L1 := Upper(L1);
L2 := Upper(L2);
for i := 1 to J do
if L1[i] <> L2[i] then exit;
Result := True;
end;
← →
Демонов Е.В. (2002-09-12 16:10) [4]Такое поведение стандартно
// надо только некоторые свойства .... вспомнил
AutoComplite // кажеться так и ещё такм одно свойство было, в итнспекторе рядом находиться // они както в паре работают
← →
Alx2 (2002-09-12 16:13) [5]>Демонов Е.В. © (12.09.02 16:10)
У человека D5
← →
Демонов Е.В. (2002-09-12 16:16) [6]Не довелось мне на D5 работать
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.09.23;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c