2

我遇到了无法修复的问题。我在 Autodesk Inventor 2017 中使用 VBA 7.1。在宏期间,正在调用用户窗体。我使用 'UserForm_Initialize()' 将一些数据填充到 UserForm 中:我填充了一个列表框,更改了一些 labelcaptions,并定位和调整了一些控件的大小。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 上运行。

有人有线索吗?

提前致谢

4

1 回答 1

1

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

于 2020-02-07T18:36:48.767 回答