在有自己做的控件的窗口在打开时为什么会死机?

killerl 2000-07-25 10:13:00
我做了一个控件,控件没有编译出来,是在工程中,我在VB中运行程序,一切正常,但把整个工程编译出来后,运行程序,有那个控件在的窗口显示不出来,会死机!请问是什么原因!需要源程序的请留下Email
...全文
192 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
TopHead 2000-07-27
  • 打赏
  • 举报
回复
P代码和本机代码的区别在于:

P代码是非编译执行的,是解释执行,和调试的环境是一样的,所以你能执行,一般不使用P代码,效率太低,现在VB中保留P代码可能主要是为了和原来的版本兼容性的问题。

本机代码是编译后的代码。

你的程序按我说的改变后应该没问题的。
Tyro 2000-07-27
  • 打赏
  • 举报
回复
控件可能是调用了什么组件,卸载后没有相应的环境了,当然用不了
yiwei 2000-07-27
  • 打赏
  • 举报
回复
你可以把金算盘装好后,找到那个控件的文件,然后备份一份,卸载后,把你备份的控件再注册一次就可以再用了。呵呵,我经常这样搞别人的控件。
killerl 2000-07-27
  • 打赏
  • 举报
回复
金算盘财务软件公司,公司有一个ListText控件,很好用,但我的电脑上一卸载金算盘软件就用不了,注册就不能通过,可能做了什么手脚!不知有不有什么办法。
我只好自己做,但做得不好!,
另外,这一个问题我把程序生成为P代码就不会出现上面的问题,为什么?
P代码与本面代码有什么不同!
bobar 2000-07-27
  • 打赏
  • 举报
回复
给我一份代码看看。bobar@21cn.com
TopHead 2000-07-25
  • 打赏
  • 举报
回复
哈哈,原来你做的是个参照控件啊,你是哪个财务软件公司的吗?

呵呵,我原来就做这个啊:)
Tyro 2000-07-25
  • 打赏
  • 举报
回复
给我一份源程序吧!包括控件的和测试控件的vb程序
wjl@wecoo.com
TopHead 2000-07-25
  • 打赏
  • 举报
回复
我需要给我发一份,我看看:)
TopHead 2000-07-25
  • 打赏
  • 举报
回复
该属性改为以下的代码试试:

Public Property Let ColWidth(ByVal NewValue As String)
Dim FirstAddress As Integer
Dim strTemp As String
Dim intFlxgrdWidth As Integer
Dim i As Integer
intFlxgrdWidth = 0
m_ColWidth = NewValue
PropertyChanged "ColWidth"
strTemp = m_ColWidth
On Error GoTo ColWidthErr
For i = 1 To m_RecordSet.Fields.Count
FirstAddress = InStr(strTemp, ",")
FirstAddress = IIf(FirstAddress > 0, FirstAddress, Len(strTemp) + 1)
FlxGrd.ColWidth(i - 1) = IIf(Val(Left(strTemp, FirstAddress - 1)) >= 0, Val(Left(strTemp, FirstAddress - 1)), m_def_GrdWidth)
strTemp = Right(strTemp, Len(strTemp) - FirstAddress)
intFlxgrdWidth = intFlxgrdWidth + FlxGrd.ColWidth(i - 1)
Next i
If intFlxgrdWidth < MaxFlxgrdWidth Then '小于最大宽度
FlxGrd.Width = intFlxgrdWidth
Else
FlxGrd.Width = MaxFlxgrdWidth
End If
If intFlxgrdWidth < Txt.Width Then '大于TXTFill宽度
FlxGrd.Width = Txt.Width
End If
Exit Property
ColWidthErr:
End Property

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧