Вниз
Скачать: CL | DM;

Как нарисовать кнопочку в EditBoxe   Найти похожие ветки 

 
DmiSb   (2005-09-26 08:54) [0]

Увадаемые мастера !!!
Есть в RX компонент ComboEdit. Как такое изобразить на КОЛ ?


 
MTsv DN   (2005-09-26 10:24) [1]

Привет...
Сталкнулся с такой задачей: в стиле KOLRbControls сделать ComboBox (в смысле, чтобы кнопка, была как KOLRbButton)... Думаю тебе, что-то из этой "оперы" надо. Вот как реализовал:
Обработчик клика на кнопке

procedure TForm1.cmbSpeeds_ButtonClick(Sender: PObj);
begin
SendMessage(cmbSpeeds.Handle, CB_SHOWDROPDOWN, 1, 0);
end;


Обработчик нажатия клавиши при фокуке на кнопке

procedure TForm1.cmbSpeeds_ButtonKeyDown(
 Sender: PControl; var Key: Integer; Shift: Cardinal);
begin
if not cmbSpeeds.Focused then cmbSpeeds.Focused := true;
if Key = VK_F4 then
  cmbSpeeds.Perform(WM_KEYDOWN, VK_F4, 0);
if Key = VK_UP then
  cmbSpeeds.Perform(WM_KEYDOWN, VK_UP, 0);
if Key = VK_DOWN then
  cmbSpeeds.Perform(WM_KEYDOWN, VK_DOWN, 0);
end;


Задание родителя для кнопки

procedure TForm1.KOLForm1FormCreate(Sender: PObj);
begin
cmbSpeeds_Button.Parent := cmbSpeeds;
cmbSpeeds_Button.Top := 2;
cmbSpeeds_Button.Left := 92;


И все...
P.S. Родитель может быть любой... Точно также сделал для UpDown"а

С Уважением MTsv DN


 
DmiSb   (2005-09-26 11:02) [2]

2 MTsv DN
Спасибо за совет
Я повесил EditBox1, рядом кнопку Button1
А затем задал для кнопки родителя

procedure TForm1.KOLForm1FormCreate(Sender: PObj);
begin
Button1.Parent := EditBox1;
Button1.Top := 0;
Button1.Left := 92;

Все прекрасно получилось



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.028 c
3-1144923811
Dust
2006-04-13 14:23
2006.06.04
Кол-во уникальных записей в таблице MS Access


2-1148045632
tort
2006-05-19 17:33
2006.06.04
Запуск программы


2-1147670432
greg123
2006-05-15 09:20
2006.06.04
При запуске на другом компе смещаются компоненты


15-1147325915
Ega23
2006-05-11 09:38
2006.06.04
С Днём рождения! 11 мая


15-1146814781
Ega23
2006-05-05 11:39
2006.06.04
С Днём рождения! 5 мая




   Наверх