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

Как перехватить вставку из буфера в комбобокс?   Найти похожие ветки 

← →
cyber-pilot   (2010-11-01 18:09) [0]

Пробовал вот так:

type
 TForm1 = class(TForm)
   procedure FormCreate(Sender: TObject);
 private

 public

 end;

 TExtEdit = class(TEdit)
 private
   procedure WMPaste(var Message: TMessage); message WM_PASTE;
 end;

 TExtComboBox = class(TComboBox)
 private
   procedure WMPaste(var Message: TMessage); message WM_PASTE;
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var
 vEdit: TExtEdit;
 vcbxReplace: TExtComboBox;
begin
 vEdit := TExtEdit.Create(Self);
 vEdit.Parent := Self;
 vEdit.Left := 10;
 vEdit.Top := 10;
 vEdit.Width := 200;
 vEdit.Height := 20;

 vcbxReplace := TExtComboBox.Create(Self);
 vcbxReplace.Parent := Self;
 vcbxReplace.Left := 10;
 vcbxReplace.Top := 50;
 vcbxReplace.Width := 200;
 vcbxReplace.Height := 20;
end;

{ TExtComboBox }

procedure TExtComboBox.WMPaste(var Message: TMessage);
begin
 ShowMessage("Вставка из буфера в комбобокс перехвачена!");
end;

{ TExtEdit }

procedure TExtEdit.WMPaste(var Message: TMessage);
begin
 ShowMessage("Вставка из буфера в едит перехвачена!");
end;

end.


Для TExtEdit - работает, для TExtComboBox - нет. Может быть есть другой способ. Был бы рад помощи.


← →
clickmaker ©   (2010-11-01 18:21) [1]

ComboBox - он на то и комбо, что из двух контролов - Edit и ListBox
нужно получить хэндл его эдита и у него ловить (cb.Perform(CB_GETCOMBOBOXINFO))



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

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



Память: 0.45 MB
Время: 0.004 c
15-1286012047
xayam
2010-10-02 13:34
2011.01.23
Проект Россия


2-1288950802
DelphiRandom
2010-11-05 12:53
2011.01.23
Действительно случайные значения


15-1286302704
boriskb
2010-10-05 22:18
2011.01.23
Помогите ответить


2-1288876929
Кирей
2010-11-04 16:22
2011.01.23
Недостаточно сведений из основной таблицы для обновления


2-1288203552
ZV
2010-10-27 22:19
2011.01.23
Как изменить шрифт набираемого кода в Delphi2009




   Наверх