Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共11 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:关闭列窗口出错

1楼
lur320 发表于:2024/1/26 10:16:00
如下代码在一个菜单按钮上,生产进度这个表有2个列窗口,一个是关联表,一个是备注列的列窗口。
在第一次切换到这个表格的时候,会报错,未将对象引用设置到对象的实例。

而第二次不会。

另外,并且每次在这个生产进度表格不停按按钮时,备注列的尺寸会不断缩小,直至达到400。而不是第一就400宽,为啥?

MainTable = Tables("生产进度")
Application.DoEvents()



For Each a As Object In Tables("生产进度").grid.parent.controls
    For Each b As Object In a.controls
        
        If b.text = "备注" Then
            b.width = 400
        End If
    Next
Next
Tables("生产进度.物料统计").visible = True

图片点击可在新窗口打开查看此主题相关图片如下:捕获.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:捕获2.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:捕获3.png
图片点击可在新窗口打开查看




2楼
有点蓝 发表于:2024/1/26 10:25:00
请上传实例测试
3楼
lur320 发表于:2024/1/26 13:52:00
我单独做了一个没有问题。但是在我的项目里面,下面的代码就是会不停的修改width。
直至其尺寸=400

For Each a As Object In MainTable.grid.parent.controls
    For Each b As Object In a.controls

        If b.text = "备注" Then
            b.width = 400
        End If
    Next
Next
4楼
lur320 发表于:2024/1/26 13:52:00
在两个表里面都是这样
5楼
lur320 发表于:2024/1/26 13:54:00
For Each a As Object In MainTable.grid.parent.controls
    For Each b As Object In a.controls

        If b.text = "备注" Then
            b.width = 400
            b.width = 400
            b.width = 400
            b.width = 400
            b.width = 400
            Output.Show(b.width)
            Else
                Output.Show(b.text)
        End If
    Next
Next

这样子反而有效,为啥?
6楼
lur320 发表于:2024/1/26 14:13:00
 
图片点击可在新窗口打开查看此主题相关图片如下:捕获.png
图片点击可在新窗口打开查看
7楼
有点蓝 发表于:2024/1/26 14:36:00
应该是有其它的列窗口,或者停靠窗口,关联表窗口等影响了
8楼
lur320 发表于:2024/1/26 15:56:00
 对,旁边有关联表。如何排除影响?

9楼
有点蓝 发表于:2024/1/26 16:02:00
试试把关联表隐藏,设置完毕后再重新显示
10楼
lur320 发表于:2024/1/26 20:11:00
 没用,
我现在用这个改善。
 Dim sdt As Date = Date.Now
While Date.Now < sdt.AddSeconds(0.5)
    Application.DoEvents
End While

能不能帮我看看为啥会这样。在开发模式会流畅很多,在用户模式就慢,感觉尺寸移动到一半就停了的样子。要多设定几次才行。
共11 条记录, 每页显示 10 条, 页签: [1] [2]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02344 s, 2 queries.