Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения
KANSoftWare

Как сделать pop-up Combobox по позиции курсора в Memo?

Delphi , Компоненты и Классы , TMemo и TRichEdit

Как сделать pop-up Combobox по позиции курсора в Memo?

Code:
unit CBoxInMemo;
 
interface
 
uses
Windows, Classes, Controls, Graphics, Forms, StdCtrls;
 
type
TFrmCboxInMemo = class(TForm)
   Button1: TButton;
   Memo1: TMemo;
   Label1: TLabel;
   ComboBox1: TComboBox;
   procedure Button1Click(Sender: TObject);
   procedure ComboBox1Exit(Sender: TObject);
   procedure ComboBox1Click(Sender: TObject);
private
   { Private declarations }
public
   { Public declarations }
end;
 
var
FrmCboxInMemo: TFrmCboxInMemo;
 
implementation
 
{$R *.DFM}
 
procedure TFrmCboxInMemo.Button1Click(Sender: TObject);
var
clientPos: TPoint;
lineHeight: Integer;
tmpFont: TFont;
begin
GetCaretPos(clientPos);
{Use the following calculation of line height only if you want your combobox
to appear below the char position you are referencing.}
tmpFont := Canvas.Font;
Canvas.Font := Memo1.Font;
lineHeight := Canvas.TextHeight('Xy');
Canvas.Font := tmpFont;
with ComboBox1 do
begin
   {Adjustment of Top by lineHeight only necessary if combobox is to appear below line.}
   Top := clientPos.Y + Memo1.Top + lineHeight;
   Left := clientPos.X + Memo1.Left;
   Visible := true;
   SetFocus;
end;
end;
 
procedure TFrmCboxInMemo.ComboBox1Exit(Sender: TObject);
begin
ComboBox1.Visible := false;
end;
 
procedure TFrmCboxInMemo.ComboBox1Click(Sender: TObject);
begin
ComboBox1.Visible := false;
end;
 
end.
Взято с Delphi Knowledge Base: http://www.baltsoft.com/

Статья Как сделать pop-up Combobox по позиции курсора в Memo? раздела Компоненты и Классы TMemo и TRichEdit может быть полезна для разработчиков на Delphi и FreePascal.


Комментарии и вопросы


Ваше мнение или вопрос к статье в виде простого текста (Tag <a href=... Disabled). Все комментарии модерируются, модератор оставляет за собой право удалить непонравившейся ему комментарий.

заголовок

e-mail

Ваше имя

Сообщение

Введите код




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: TMemo и TRichEdit ::


реклама

::


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru Rambler's Top100
20.10.2021 00:28:58/0.0032110214233398/2