以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  动态调整控件问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=61122)

--  作者:zunwoun
--  发布时间:2014/12/7 16:00:00
--  动态调整控件问题
通过代码对窗口变换后自动调节控件大小,但对于RecordGrid类型的控件通过代码只能调节右边内容栏的字体大小,无法调整左边标题栏的字体大小,请版主赐教。
--  作者:程兴刚
--  发布时间:2014/12/7 16:08:00
--  
放面板中,停靠属性Fill,面板自动滚动属性设置为False,通过设置面板大小来实现。
--  作者:有点甜
--  发布时间:2014/12/7 16:35:00
--  

 可以这样改

 

Dim rgd As Object = Forms("窗口1").Controls("RecordGrid1").Basecontrol
rgd.Cols(0).style.Font = New Font("黑体", 15)


--  作者:zunwoun
--  发布时间:2014/12/7 17:31:00
--  
停靠属性Fill是以下方法设置吗?按照你的方法改了没有实现效果,可能是停靠属性Fill设置错
.Dock = Windows.Forms.DockStyle.Fill

--  作者:有点甜
--  发布时间:2014/12/7 17:36:00
--  
  3楼
--  作者:zunwoun
--  发布时间:2014/12/7 17:43:00
--  
3楼的方法试过不行,我再检查一下是否有错
--  作者:zunwoun
--  发布时间:2014/12/7 17:53:00
--  
经过调整,证明3楼版主的方法可行,非常感谢!
--  作者:zunwoun
--  发布时间:2014/12/7 18:12:00
--  
字体是能够调整,宽度也可以调整,但行高度不懂怎样调整,以下代码在执行高度出错,请赐教
If Typeof c Is  WinForm.RecordGrid Then
  Dim rgd As Object = Forms(args(0) ).Controls(c.name).Basecontrol
  rgd.Cols(0).width=rgd.Cols(0).width*宽度变幅 
   rgd.Cols(0).Height=rgd.Cols(0).Height*高度变幅
   rgd.Cols(0).style.Font = New Font("宋体", rgd.Cols(0).style.Font.size*高度变幅)
 End If

--  作者:有点甜
--  发布时间:2014/12/7 18:15:00
--  
rgd.Rows(0).Height = 500
--  作者:zunwoun
--  发布时间:2014/12/8 12:19:00
--  
谢谢版主!