PopUpMenu1.OwnerDwar := True; 를 먼저 하고,
Screen.MenuFont.Name := frmStudyLaw2.Font.Name;
Screen.MenuFont.Size:= 11; // frmStudyLaw2.Font.Size;
Screen.CaptionFont:= frmStudyLaw2.Font;
만약 폰트가 영역을 넘치면
So assign a handler for
OnMeasureItem
of the items of the popup menu either at design time, or at run time:puMenuMain.OwnerDraw:=True;
Screen.MenuFont.Size:=18;
for i := 0 to puMain.Items.Count - 1 do
puMain.Items[i].OnMeasureItem := PopupMeasureItem;
where
PopupMeasureItem
can be as simple asprocedure TMyForm.PopupMeasureItem(Sender: TObject; ACanvas: TCanvas;
var Width, Height: Integer);
begin
Height := ACanvas.TextHeight('.') + 2;
end;
or you can determine the necessary height as the user selects from the list to save calling
TextHeight
each time an item is to be drawn.