【问题标题】:Listbox.Height doesn't update on 1 PC, but does on all other PC's at the officeListbox.Height 不会在 1 台 PC 上更新,但会在办公室的所有其他 PC 上更新
【发布时间】:2018-08-14 13:07:06
【问题描述】:

我遇到了一个我无法解决的问题.. 我在 Autodesk Inventor 2017 中使用 VBA 7.1。 在宏期间,正在调用用户窗体。 我使用 'UserForm_Initialize()' 将一些数据填充到 UserForm 中: 我填写了一个列表框,更改了一些标签标题,并定位和调整了一些控件的大小。 UserForm 使用以下代码根据表单上列表框的高度调整大小:

HeightListbox = 12.7 + MaxRows * 12.7

ListBoxSelectiParts.Height = HeightListbox
UserFormSelectiParts.Height = HeightListbox + 80
CommandButtonOK.Top = HeightListbox + 22
CommandButtonCancel.Top = HeightListbox + 22

奇怪的是,我已经在大约 5 台 PC 上进行了测试,除了 1 台 PC 外,它运行良好。 在那台 PC 上,所有数据都被填写,调整大小和重新定位的控件完成,除了 listbox.height! 当我创建一个不同的按钮并使用

对其进行硬编码时
ListBoxSelectiParts.Height = 300

它可以工作,但它在初始化期间不起作用.. 同样,这适用于我办公室的所有其他 PC。 所有 PC 都是 Windows 7 64 位。我注意到某些 PC 的内置版本有所不同,但是 2 台 PC 的内置版本与问题 PC 相同,并且代码确实可以在这些 PC 上运行..

有人知道吗?

提前致谢

【问题讨论】:

  • 您尝试重启了吗?
  • 听起来 AutoDesk 中有一个设置禁止初始化调用。这可能是一个安全设置。
  • 感谢您的反应。我已经进行了多次重新启动(我已经为此苦苦挣扎了一周:))。如果它可以是一个安全设置,那么所有其他控件在 Initialize 调用中都被调整大小和移动不是很奇怪吗?

标签: vba listbox userform autodesk-inventor


【解决方案1】:

我已将列表框(使列表框足够高)包含在一个框架中。然后,只需更改框架的高度。我把框架的 BorderStyle 属性放在 0=fmBorderStyleNone

【讨论】:

    猜你喜欢
    • 2013-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-02
    相关资源
    最近更新 更多