在64位Windows系统上安装32位VB6 GUI设计

时间:2015-01-22 08:46:50

标签: windows user-interface vb6 windows-7-x64

我在Windows 32位系统上使用visual basic 6.0设计了一个GUI。我试图在Windows-64位系统上安装它。当我在64位Windows系统上安装它时,我在GUI中遇到了一些问题,就像标签或文本框中缺少某些文本一样。 当我在32位Windows系统上安装它时它工作正常。

我很困惑GUI设计或安装可能会出现什么问题?

感谢。

2 个答案:

答案 0 :(得分:0)

我们在过去遇到过与此类似的问题,某些控件类型/控件设置在现代版本的Windows中没有出现。

我们的工作是将Windows外观主题设置为Windows Classic(看起来大多像XP)。从长远来看,我们将这些表格替换为有效的控件。

答案 1 :(得分:0)

大多数控件都没有AutoSize功能,因此您必须自己动手

查看TextWidth()函数

你提到的控件都在Caption propery中有文字,所以你可以做如下的事情:

Option Explicit

Private Sub Command1_Click()
  Dim strLong As String
  strLong = String(50, "A")
  SetCaption Label1, strLong, 0
  SetCaption Check1, strLong, 480
  SetCaption Command1, strLong, 480
End Sub

Private Sub SetCaption(ctrl As Control, strCaption As String, sngMargin As Single)
  Dim sngWidth As Single
  sngWidth = TextWidth(strCaption)
  ctrl.Width = sngWidth + sngMargin
  ctrl.Caption = strCaption
End Sub

这远非完美,但它可能适用于您的情况。

一些直接的评论:

  • TextWidth()使用表单中的字体计算文本的宽度
  • 并非所有控件都具有Caption属性。对于文本框,您必须使用Text属性,因此您无法使用SetCaption函数
  • 某些控件需要一些额外的空间,例如复选框控件中的复选框或命令按钮控件周围的边框。你必须弄清楚哪个边际效果最好