Форум: "Основная";
Текущий архив: 2004.05.16;
Скачать: [xml.tar.bz2];
ВнизКомпонента Найти похожие ветки
← →
Ivolg © (2004-05-03 09:26) [0]Здрасьте ещё раз! Мож кто знает едн достать компоненты PopupMenu чтоб у него было с севой стороны надпись какая нибудь! Как в проге в кладовке Cool Editor! СПАСИБО!
← →
Gero © (2004-05-03 09:28) [1]Лучше конечно, сделать самому, используя событие OnAdvancedDrawItem MenuItem"a.
Но можно сходить на http://www.torry.net и взять готовый компонент.
← →
Ivolg © (2004-05-03 09:32) [2]Gero
А как он называется?
← →
TUser © (2004-05-03 09:45) [3]
> Как в проге в кладовке Cool Editor!
А в исходниках этой проги покопать не судьба?
← →
Gero © (2004-05-03 09:46) [4]
Ivolg © (03.05.04 09:32)
А как он называется?
Откуда я знаю?
Зайди и посмотри. Там куча компонент валяется, наверняка есть и такой.
← →
Ivolg © (2004-05-03 16:16) [5]Эй разрабочик Cool Editor"a ОТЗОВИСЬ!
← →
Mim1 © (2004-05-03 17:11) [6]Ivolg © (03.05.04 16:16) [5]
Ну нахал(!), щас разработчик прибежит на твой клик и тапочки принесет :).
procedure TForm1.test0051MeasureItem(Sender: TObject; ACanvas: TCanvas;
var Width, Height: Integer);
var rc:trect;
mi :TMenuItem absolute sender;
begin
FillChar(rc,sizeof(trect),#0);
windows.DrawText(
ACanvas.Handle,
pchar(mi.Caption),
-1,
rc,
DT_CALCRECT);
with rc do
begin
if mi.Parent = PopupMenu1.Items then
Width := (Right - left) + Image1.Picture.Bitmap.Width
else Width := (Right - left);
Height := (Bottom - top);
end;
end;
procedure TForm1.test0081AdvancedDrawItem(Sender: TObject;
ACanvas: TCanvas; ARect: TRect; State: TOwnerDrawState);
var i : integer;
mi :TMenuItem absolute sender;
begin
aCanvas.Brush.Color := clMenu;
aCanvas.FillRect(ARect);
if mi.Parent = PopupMenu1.Items then
begin
i := PopupMenu1.Items.IndexOf(mi);
ACanvas.CopyRect(rect(ARect.left,
ARect.Top,
Image1.Picture.Bitmap.Width,
ARect.Bottom),
Image1.Picture.Bitmap.Canvas,
rect(0,
i*(ARect.Bottom-ARect.Top),
Image1.Picture.Bitmap.Width,
i*(ARect.Bottom-ARect.Top)+(ARect.Bottom-ARect.Top)));
inc(ARect.Left,Image1.Picture.Bitmap.Width);
end;
if odGrayed in State then aCanvas.Font.Color := clGray;
if odSelected in State then aCanvas.Brush.Color := clHighlight;
aCanvas.FillRect(ARect);
windows.DrawText(
ACanvas.Handle,
pchar(TMenuItem(Sender).Caption),
-1,
ARect,
DT_SINGLELINE+DT_VCENTER);
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.05.16;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.055 c