Главная страница
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.02 c
7-1690
mod
2003-06-17 14:01
2003.09.01
Раскладка клавиатуры


7-1691
revo
2003-06-17 14:53
2003.09.01
ISA + NT


1-1458
eXtreme.LIK
2003-08-18 18:10
2003.09.01
Нахождение самого нового файла


4-1710
andre
2003-06-21 02:24
2003.09.01
таймер


9-1266
Призрак_Коммунизма
2003-02-23 21:51
2003.09.01
Разные комбинации доспехов и оружия у героя