在vbalGrid上更改标题字体

问题描述 投票:1回答:1

我正在维护一个VB6应用程序,该应用程序充分利用了旧的VBAccelerator SGrid 2.0(vbalGrid,使用另一个Grid控件并不是真正的选择)。我需要在运行时更改网格字体,而我似乎没有做任何事情来更改标题字体,仅在设计时更改网格控件的Font属性似乎实际上会更改字体。

这是我尝试过的代码,我认为这会起作用:

Dim Fnt As New StdFont
Set Fnt = vbalGrid.Font
Fnt.Name = "MS Sans Serif"
Set vbalGrid.Font = Fnt

这可以很好地设置网格主体的字体,但是如果网格已经有数据,则必须清除并重新填充它。但是,即使您清除所有列并重新创建,标题也不会改变。

vb6 vbaccelerator
1个回答
0
投票

Property Set Font例程中似乎有一个错误-它不会调用BuildMemDC来使其缓冲的输出DC无效。

尝试使用RowHeight(1) = RowHeight(1) + 1或类似的命令强制调用BuildMemDC。您必须在其内部m_lMaxRowHeight变量上方增加某一行的高度,以便进行重建。

© www.soinside.com 2019 - 2024. All rights reserved.