vb6 - 无法启用文本框,导致运行时错误
问题描述
我正在开发一个VB6 旧版应用程序(是的,非常、非常、非常旧的应用程序,迁移不是一种选择)。我有一个button
和一个textbox (VB.TextBox)
。文本框最初被禁用(例如Enabled = False)
。当我单击 时button
,textbox
应该启用并获得焦点。这是 OnClick 事件的代码
Private Sub btnMAJ_Click(Index As Integer)
txtNom.Enabled = True
txtNom.SetFocus
End Sub
问题是,当我txtNom.Enabled
将其更改为 True 后立即检查值时,它仍然为 False,并且当代码到达该行时 txtNom.SetFocus
,它会引发错误消息
运行时错误“5”
无效的过程调用或参数
因为txtNom
控件仍然被禁用。我不明白会有什么问题。
这是 VB6 IDE 的屏幕截图,txtNom.Enabled
在分配True后立即查看值,您可以看到它仍然是False
解决方案
好的,所以我在这里发现了问题。在这种特殊情况下,txtNom
控件位于panel
也被禁用的 a 中。直到我在包含的. 因此,如果组件的任何容器被禁用,似乎会失败,这是有道理的,但错误消息信息是我认为微软不应该太自豪的东西。panel
SetFocus
推荐阅读
- javascript - TypeError: Object(…) 不是函数
- python - python cffi被windows defender隔离
- php - $_POST 表单高级安全性
- exchangewebservices - 使用 ews 禁用 Outlook 电子邮件转发
- watchkit - 如何检测在表格行控制器中添加的 WKInterfaceGroup 上的点击?
- c# - How to sort User and Role in core Identity
- javascript - 无论总数如何,Javascript 都获得 100%
- javascript - 无法使用道具值编辑输入
- css - Vue模板colspan无法正常工作
- reactjs - 单击时我想在反应 js 方法中生成警报