Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.01;
Скачать: CL | DM;

Вниз

Edit - вставить текст в позицию курсора   Найти похожие ветки 

 
CrazyHackers   (2003-08-18 15:00) [0]

Есть POPUPMENU в котором имеются ряд значений. Хотелось бы, при вызове из Edit - значение вставлялось в указанную позицию.


 
VAleksey ©   (2003-08-18 15:25) [1]

Что значит "значений"?

PS
Edit1.SelText := "То что надо";.


 
CrazyHackers   (2003-08-18 16:46) [2]

Значений - это я из базы формирую список слов, которые чел может вставить по правой клавише...


 
NAlexey ©   (2003-08-18 16:51) [3]

Узнавай над какой буквой Edit1 находится курсор, потом "склеивай" фразу и все...


 
CrazyHackers   (2003-08-18 16:55) [4]

Ну а как это самое сделать? Я чайник :)


 
VAleksey ©   (2003-08-18 17:37) [5]

Например если речь идет о TMemo или TEdit, то

procedure TForm1.Edit1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
Var
SStart:Integer;
begin
if Button <> mbRight then Exit;
With TEdit(Sender) do
begin
SStart := SelStart;
SelStart := Perform(EM_CHARFROMPOS,0,MakeLParam(X,Y));
SelText := "aaaaaaaaaaa"; // То, что надо вставить
SelStart := SStart;
end;
end;


 
BillyJeans ©   (2003-08-18 17:37) [6]

Вставлять в Edit или куда???


 
CrazyHackers   (2003-08-18 19:03) [7]

а что не так?
пишет - не совпадет список параметров (parametr list differ)



procedure TfrmNewItem.GetTemplateName(cat_id: integer);
var
MyPopUpItem: TMenuItem;

begin
PopupMenu1.Items.Clear;
with qTemplate do
begin
If Active Then Close;
Params[0].AsInteger:=cat_id;

Open;
While Not EOF do
begin
MyPopUpItem := TMenuItem.Create(Self);
MyPopUpItem.Caption:=FieldByName("prefix").AsString;
MypopUpItem.OnClick := Edit1MouseDown;
PopupMenu1.Items.Add(MyPopUpItem);

Next;
end;

end;
end;

procedure TfrmNewItem.Edit1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);

Var
SStart:Integer;
begin

With TEdit(Sender) do
begin
SStart := SelStart;
SelStart := Perform(EM_CHARFROMPOS,0,MakeLParam(X,Y));
SelText := "aaaaaaaaaaa"; // То, что надо вставить
SelStart := SStart;
end;
end;




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

Текущий архив: 2003.09.01;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.016 c
1-1495
Grover_11
2003-08-18 10:31
2003.09.01
Определение файла по дате 2


6-1521
tiam
2003-06-26 14:03
2003.09.01
Net send средствами Делфи.


14-1652
Mr&MsGuns
2003-08-12 16:12
2003.09.01
Моя старая ветка про библиотеки dll


14-1578
den74
2003-08-11 14:11
2003.09.01
Delphi & Access


14-1577
avch
2003-08-11 09:47
2003.09.01
Windows Api