Вниз
Скачать: 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.026 c
3-1144408053
sia
2006-04-07 15:07
2006.06.04
delphi 7 & BDE 4


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


2-1147890817
Тимофейка
2006-05-17 22:33
2006.06.04
динамическое создание кнопки


15-1146854038
Постоялец
2006-05-05 22:33
2006.06.04
Освоение 1C


9-1131153824
апвапв
2005-11-05 04:23
2006.06.04
opengl+шейдеры




   Наверх