以下是引用antony521在2016-1-28 08:58:22的发言:
“宋体”,FontSize设为默认的“9”时的宽度是6,FontSize设为默认的“10”时的宽度是多少?现在显示器的分辨率高用的字号会大点,干脆教一下11\12等的宽度怎样得到.多谢!
好像有个测试,字号对应的方法的。
这个,是吹水斑竹写的。FONTMETRIC就是,不知道能不能用在这里
of = CREATEOBJECT("form1")
of.show(1)
DEFINE CLASS form1 as Form
AutoCenter = .T.
ADD OBJECT list1 as ListBox WITH top=10,left=10,RowSourceType=1,;
RowSource="101,202,303,404,505,606,707,808,909,202,303,404,505,606,707,808,909,202,303,404,505,606,707,808,909"
PROCEDURE list1.MouseMove(nButton, nShift, nXCoord, nYCoord)
nRowHeight = FONTMETRIC(1, this.FontName, this.FontSize);
+ FONTMETRIC(3, this.FontName, this.FontSize) + 2
nRow = INT((nYCoord - this.Top - 2) / nRowHeight)
this.ListIndex = nRow + this.TopIndex
ENDPROC
ENDDEFINE
[此贴子已经被作者于2016-1-28 09:17编辑过]