Вниз
Скачать: 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 вся ветка

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



Память: 0.46 MB
Время: 0.012 c
6-1536
jel
2003-06-25 10:27
2003.09.01
IPX и разные сети


8-1516
Bill
2003-04-10 14:56
2003.09.01
Потеря Canvas


7-1692
Grinya
2003-06-14 13:49
2003.09.01
Как изьят иконку диска???


4-1719
andrey113
2003-06-30 21:58
2003.09.01
Как мне изменить содержимое StatusBar-а другой проги?


4-1714
Salivan
2003-07-03 15:26
2003.09.01
Как можно общаться с консольными приложениями?




   Наверх