Foxtable(狐表)用户栏目专家坐堂 → 这是一个Bug?(关于MessageBox的)


  共有3192人关注过本帖树形打印复制链接

主题:这是一个Bug?(关于MessageBox的)

帅哥哟,离线,有人找我吗?
Hopenight
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:862 积分:10841 威望:0 精华:0 注册:2016/5/6 14:34:00
这是一个Bug?(关于MessageBox的)  发帖心情 Post By:2016/12/15 10:00:00 [只看该作者]

在当前表格的焦点单元格是一个数据库字典列时,点击按钮弹出的MessageBox会显示不出来。

必须按一下Alt键才会出来...

 

把MessageBox.Show方法加上ServiceNotification参数,虽然可以让MessageBox弹出窗体马上弹出来

但是这样有可能导致在关闭MessageBox之后,程序主窗体最小化...


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2016/12/15 10:04:00 [只看该作者]

这个是windows的问题,不是程序问题。

windows经常找不到系统对话框,包括系统自己的。

 回到顶部
帅哥哟,离线,有人找我吗?
Hopenight
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:862 积分:10841 威望:0 精华:0 注册:2016/5/6 14:34:00
  发帖心情 Post By:2016/12/15 10:19:00 [只看该作者]

以下是引用狐狸爸爸在2016/12/15 10:04:00的发言:
这个是windows的问题,不是程序问题。

windows经常找不到系统对话框,包括系统自己的。

老大,有什么简单点的办法解决不?

实在不想去为这弄一个窗口...


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2016/12/15 10:22:00 [只看该作者]

MessageBox.show("1")
basemainform.windowstate = 2
basemainform.show()

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2016/12/15 10:22:00 [只看该作者]

后面加上显示basemainform的代码不就行了?

 

MessageBox.Show("测试", "重要提示",MessageBoxButtons.Ok,MessageBoxIcon.Error, 0, Windows.forms.MessageBoxOptions.ServiceNotification)
ShowAppWindow(basemainform.text, 2)


 回到顶部
帅哥哟,离线,有人找我吗?
Hopenight
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:862 积分:10841 威望:0 精华:0 注册:2016/5/6 14:34:00
  发帖心情 Post By:2016/12/15 10:54:00 [只看该作者]

以下是引用狐狸爸爸在2016/12/15 10:22:00的发言:
MessageBox.show("1")
basemainform.windowstate = 2
basemainform.show()

这样并不能解决问题。

在MessageBox.Show后面加上的两句,是解决弹出窗口关闭之后的显示程序主窗体的问题。

现在的问题是MessageBox.Show如果不加ServiceNotification参数,则MessageBox无法显示出来(直到用户按了Alt键)


 回到顶部
帅哥哟,离线,有人找我吗?
Hopenight
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:862 积分:10841 威望:0 精华:0 注册:2016/5/6 14:34:00
  发帖心情 Post By:2016/12/15 10:57:00 [只看该作者]

以下是引用有点色在2016/12/15 10:22:00的发言:

后面加上显示basemainform的代码不就行了?

 

MessageBox.Show("测试", "重要提示",MessageBoxButtons.Ok,MessageBoxIcon.Error, 0, Windows.forms.MessageBoxOptions.ServiceNotification)
ShowAppWindow(basemainform.text, 2)

这样也不能彻底解决问题。

MessageBox.Show在加上了ServiceNotification参数之后,MessageBox能理解显示出来。

但是如果当前桌面如果还有其他程序窗体处于非最小状态下,会导致自己的程序主窗体最小化(即使加上了ShowAppWindow也没有用)


 回到顶部
帅哥哟,离线,有人找我吗?
Hopenight
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:862 积分:10841 威望:0 精华:0 注册:2016/5/6 14:34:00
  发帖心情 Post By:2016/12/15 11:04:00 [只看该作者]

以下是引用狐狸爸爸在2016/12/15 10:04:00的发言:
这个是windows的问题,不是程序问题。

windows经常找不到系统对话框,包括系统自己的。

既然Windows的不好用,建议狐表能用C1TaskDialog控件模拟Windows的MessageBox提供给用户定制使用

当然如果能提供其他超出Windows的特性,那就更好了。哈哈...


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2016/12/15 11:06:00 [只看该作者]

 ShowAppWindow 应该是没问题,只要你的标题准确,就能切换显示对应的窗口。

 回到顶部
帅哥哟,离线,有人找我吗?
Hopenight
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:862 积分:10841 威望:0 精华:0 注册:2016/5/6 14:34:00
  发帖心情 Post By:2016/12/15 11:14:00 [只看该作者]

以下是引用有点色在2016/12/15 11:06:00的发言:
 ShowAppWindow 应该是没问题,只要你的标题准确,就能切换显示对应的窗口。

哥没有调查实测过的话,是不是乱说的

确实ShowAppWindow也解决不了问题


 回到顶部
总数 12 1 2 下一页