Главная страница
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.031 c
1-1506
Владимир Березин
2003-08-15 22:21
2003.09.01
Вопрос про hint


14-1645
Best Gun
2003-08-09 17:05
2003.09.01
Смысл Матрицы-2


7-1699
MakNik
2003-06-18 15:58
2003.09.01
Главное меню


7-1689
Mor
2003-06-17 00:46
2003.09.01
Работа с COM-портом


1-1396
Zorik
2003-08-19 16:11
2003.09.01
как подключить dllки с произвольной папки