Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ComboBox ;помогите плиз!!!


Part ©   (2002-11-21 10:09:00) 

Мастера, я снова нужна Ваша помощь!! Как открывать combobox при нажатии Enter ?


Part   (2002-11-21 15:47:00) [1]

спасибо выручили :)


Song   (2002-11-21 15:33:00) [2]

Вот вставь этот обработчик, всё будет работать:

procedure TForm1.ComboBox1KeyPress(Sender: TObject; var Key: Char);
begin
IF Key=#13 then Key:=#0;
end;


Song   (2002-11-21 15:33:00) [3]

Ты всё ещё не сделал это открытие?


Lord Warlock   (2002-11-21 15:27:00) [4]

Вот тебе кусок примера:

var
Form1: TForm1;
Flag: Boolean=False;
implementation

{$R *.DFM}

procedure TForm1.ComboBox1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Key=VK_RETURN) then
if (not Flag) then
begin
ComboBox1.DroppedDown:=True;
Flag:=not Flag;
end
else
begin
ComboBox1.DroppedDown:=False;
Flag:=not Flag;
end;
end;


procedure TForm1.ComboBox1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Flag) and (Key=VK_RETURN) then
ComboBox1.DroppedDown:=False;
end;


Part   (2002-11-21 15:24:00) [5]

procedure TForm1.ComboBox1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (key = vk_shift) or (key = vk_return) then
ComboBox1.Perform(CB_SHOWDROPDOWN,Integer(True),0);
end;

вот в таком варианте shift открывает, а ентер не хочет. Никто не подскажет в чем тут фишка ?


Part   (2002-11-21 14:57:00) [6]

открывать то я его открываю (если на кнопку вешаю ComboBox1.Perform(CB_SHOWDROPDOWN,Integer(True),0);

), а вот чтобы лист окрывался не alt+стрелка вниз, а Enterom не могу. Я понимаю что всем надоел, но мне ну ооочень нужно!!!


Игорь Шевченко   (2002-11-21 13:11:00) [7]

AndrewVolkov (21.11.02 13:06)

win32.hlp ComboBox messages


Song   (2002-11-21 13:08:00) [8]

Из хэлпа (я тоже кстати знаю :-) )


AndrewVolkov   (2002-11-21 13:06:00) [9]

to Игорь Шевченко
to Part

а откуда вы знаете про Perform( CB_SHOWDROPDOWN,Integer(True),0);
где такое описывается???


Игорь Шевченко   (2002-11-21 12:44:00) [10]

wParam
Specifies whether the drop-down list box is to be shown or hidden. A value of TRUE shows the list box; a value of FALSE hides it.

Вот ты его и прячешь :-)

ComboBox1.Perform(CB_SHOWDROPDOWN,Integer(True),0);


Song   (2002-11-21 12:42:00) [11]

Я тебе уже подсобил. Мой пример у меня работает (только что проверил - вынудили Вы меня)


Part   (2002-11-21 12:30:00) [12]

procedure TForm1.ComboBox1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = vk_return then
ComboBox1.Perform(CB_SHOWDROPDOWN,Integer(False),0);
end;

так тоже не работает. Народ, подсобите кто чем может :) плиииз


Игорь Шевченко   (2002-11-21 11:45:00) [13]

DBLookupComboBox не имеет никакого отношения к ComboBox

RTFS: dbctrls.pas


Part   (2002-11-21 11:43:00) [14]

procedure TForm_R.MyKeyDown2(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
ii: integer;
begin


if key = vk_return then
DBLookupComboBox4.Perform(CB_SHOWDROPDOWN,Integer(True),0);

end; я пытаюсь так но не работает ??


Song   (2002-11-21 10:55:00) [15]

ComboBox1.Perform(CB_SHOWDROPDOWN,Integer(True),0);


Part   (2002-11-21 10:40:00) [16]

2 song

прости ламера :) а как этим пользоваться ? если можно небольшой пример


Song   (2002-11-21 10:35:00) [17]

CB_SHOWDROPDOWN


Smithson   (2002-11-21 10:14:00) [18]

Combobox1.DroppedDown := True // Открыть
Вставть в обработчик клавиатуры


Наверх

Титульная страница Поиск, карта сайта Написать письмо