自繪選單Menu字型改變大小

2021-08-09 13:48:31 字數 958 閱讀 2025

delphi : 自繪選單menu字型改變大小 

menu選單的屬性面板是沒有font屬性的,可以通過寫**來改變選單字型大小。

窗體上放一mainmenu1,包含的選單項為menuitem1,menuitem2...

設定為mainmenu的ownerdraw為true,

menuitem1的ondrawitem事件:

procedure   tform1.menuitem1drawitem(sender:   tobject;   acanvas:   tcanvas;

arect:   trect;   selected:   boolean);

begin

acanvas.fillrect(arect);

acanvas.font.size:=20;         //設定為足夠大的字型大小

acanvas.font.name:= 'times   new   roman ';     //設定為你喜歡的字型

//輸出選單項

acanvas.textout(arect.left,arect.top,(sender   as   tmenuitem).caption);    

end;

menuitem1的onmeasureitem事件:

procedure   tform1.menuitem1measureitem(sender:   tobject;   acanvas:   tcanvas;

var   width,   height:   integer);

begin

height:=40;       //設定為足夠高以容納你的選單項

width:=200;     //設定為足夠寬以容納你的選單項

end;

將其他選單項的ondrawitem設定為menuitem1drawitem

onmeasureitem設定為menuitem1drawitem

VC 的選單控制和自繪選單

選單控制 為什麼即使呼叫enablemenuitem選單項後,選單項還處於禁止狀態 需要將cframewnd m bautomenuenable設定為false,如果該資料成員為true 預設值 工作框將自動地禁止沒有on update command ui或者on command的選單項。disa...

選單Menu和選單項MenuItem

檔案子選單下面有新建,開啟和退出子選項。檢視下面有普通子選項。1 在shell視窗中新增選單條 主選單 menu bar 型別是選單 menu 樣式是選單條 swt.bar 2 然後在主選單中新增兩個子選單 檔案子選單fileitem和檢視子選單viewitem 型別是選單選項 menuitem 樣...

不使用HOOK實現系統選單的自繪

這篇文章的作者很大程度上簡化了選單的自繪,缺陷是沒有實現系統選單的自繪,第二次彈出系統選單的時候才開始自繪,有時候一直都是預設的系統選單,不穩定。問什麼第一次彈出的時候沒有自繪?那我要是在wm initmenu和wm initmenupopup子前的訊息中就修改系統選單項可不可以?答案是可以的。我們...