字型大小自動隨寬度和內容改變

2021-09-09 03:06:12 字數 887 閱讀 3960

字型的大小設定可以在開始的時候指定.但是有時候需要根據視窗或者文字的長短來指定.那麼這個時候就需要用到時間paint了. 繼承與control的控制項都有這個事件.也可以override onpaint函式. 主要考慮兩個因素,寬度和高度.比方如果字型的長度小於乙個比例,則增加字型大小.如果大於乙個比例則減小字型.

高度也是同樣的道理.控制在乙個比例範圍以內就可以了

///

///標題重繪時候的處理

/// ///

///private

void txttitle_paint(object

sender, painteventargs e)

var size =measurestringwidth(lbl.text, e.graphics, lbl.font);

float diff = size.width /lbl.width;

var font =lbl.font;

while ((diff > 0.6 || diff < 0.4

))

if (font.size < 5

)

diff = size.width /lbl.width;

}lbl.font =font;

}//////

獲得文字的高寬

/// ///

文字內容

///繪畫 ///

字型 ///

大小 public

static sizef measurestringwidth(string

text, graphics graphic, font font)

textarea高度隨內容自動改變

textarea預設的高度不是對著內容變化,而是隨著內容增多,出現了滾動條。目前的需求是實現乙個能夠輸入的textarea,並且高度跟著內容變化。發現了乙個比較好用的外掛程式flextext,但是這個基於jquery寫的,目前的技術棧是react,所以簡單看了下,然後用原生的js模擬了乙個實現。ht...

窗體控制項隨窗體大小改變 包括字型大小

是一篇vb編寫的,我只是把它翻譯成c 的.其實anchor和dock屬性也可以實現,但好象只對容器效果理想,而且字型大小也沒有變化.最近論壇上有好多這樣的貼子,具體實現 如下 private void settag control cons private void setcontrols floa...

C 實現窗體控制項隨窗體大小改變 包括字型大小

private float x private float y private void settag control cons private void setcontrols float newx,float newy,control cons float a convert.tosingle ...