5

我有一个带有“继续”和“取消”文本按钮的 VB6 表单。我想检查哪个被点击了。在 C# 中,每个表单都有一个对话框结果,我可以在退出表单之前根据单击的按钮进行设置。我在 VB6 中看不到这一点。

有对话结果吗?如果不是,检查对话结果的最佳做法是什么?

4

2 回答 2

6

要模拟 .net WinForms 行为,您需要在表单代码中添加一个辅助函数:

Public Function ShowDialog() As VbMsgBoxResult
  Me.Show vbModal
  ShowDialog = Iif(Cancelled, vbCancel, vbOk)
  Unload Me
End Function

表单级别的Cancelled变量可以在调用.Hide()or之前由按钮事件函数设置.Close(),或者您可以有一个直接包含结果代码的变量。

于 2011-08-03T16:31:27.680 回答
0

在VB6中,对话框一般返回一个整数值,可能对应vbYes、vbNo、vbCancel等。详情见这篇文章:http ://www.vb6.us/tutorials/understanding-msgbox-command-visual-basic

http://www.code-vb.com/fragments/Dialogs.htm#Msgbox OK-Cancel

如果您自己创建了表单,则必须在表单上指定它。

这篇文章中的最后一个答案可能会有所帮助:http ://www.xtremevbtalk.com/archive/index.php/t-306663.html

于 2011-08-03T16:21:00.760 回答