Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.12;
Скачать: CL | DM;

Вниз

Вертикальный текст в popup меню.   Найти похожие ветки 

 
Thomas Brandon   (2004-08-29 17:49) [0]

Интересно, как делается сабж?


 
Новичек   (2004-08-29 18:10) [1]

Хм... Действительно, интересно... Думаю, что без помощи WinAPI здесь не обойтись.


 
Thomas Brandon   (2004-08-29 18:17) [2]

Неужели никто не делал этого? Понимаю, что саюж предназначен для "красивости", но уж очень хочется :-)


 
Endi   (2004-08-29 19:49) [3]

PopupMenu1.OwnerDraw:=true;

procedure TForm1.Menu1DrawItem(Sender: TObject; ACanvas: TCanvas;
 ARect: TRect; Selected: Boolean);
var
  LF:TLogFont;
  F:TFont;

begin
  with ACanvas do begin
    Font.Name:="Arial";
    Font.Size:=25;
    F:=TFont.Create;
    try
      F.Assign(Font);
      GetObject(F.Handle,sizeof(LF),@LF);
      LF.lfEscapement:=900;
      LF.lfOrientation:=900;
      F.Handle:=CreateFontIndirect(LF);
      Font.Assign(F);
    finally
      F.Free;
    end;
    TextOut(5,TextWidth("Щелкнуть здесь!"),"Щелкнуть здесь!");
  end;
end;

procedure TForm1.Menu1MeasureItem(Sender: TObject; ACanvas: TCanvas;
 var Width, Height: Integer);
begin
 with ACanvas do begin
   Font.Name:="Arial";
   Font.Size:=25;
   Height:=ACanvas.TextWidth("Щелкнуть здесь!")+5;
   width:=ACanvas.TextHeight("Щелкнуть здесь!");
 end;
end;

Что-то типа этого.


 
Thomas Brandon   (2004-08-30 12:08) [4]

Спасибо огромное, Endi :-)
Пойду пробовать...



Страницы: 1 вся ветка

Текущий архив: 2004.09.12;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.029 c
1-1093337105
LordBTR
2004-08-24 12:45
2004.09.12
Как отловить одновременное нажатие в проге клавиш Ctrl+Alt+S


14-1093275200
Igor_thief
2004-08-23 19:33
2004.09.12
RAVE


14-1093256734
Slider007
2004-08-23 14:25
2004.09.12
Shift+Insert


4-1090972782
Maniac
2004-07-28 03:59
2004.09.12
Как сменить формат даты в системе


14-1093317713
SPeller
2004-08-24 07:21
2004.09.12
Отошлем спамерам спам :)