28

我正在使用 MessageBox 类向用户显示错误,虽然这可能不是正确的行为,但它非常方便。然而,这是一个触摸屏应用程序,所以我需要“确定”按钮比它大得多(诅咒我的手指太大了!)。

我认为如果我在对话框中增加字体大小,我应该没问题。有没有办法做到这一点?或者真的,有什么办法可以增加对话框的大小?

谢谢

4

5 回答 5

17

据我所知,您不能,因为“正常”对话框正在使用您的默认系统字体设置。

自己动手可能是最好的前进方式。做起来很简单,而且很有趣!并且您可以构建标准对话框不支持的内容(没有 PInvoke 魔术),例如在屏幕中间居中等。

于 2008-10-24T00:19:21.620 回答
6

请查看我的免费使用FlexibleMessageBox可以代替 MessageBox 并具有(静态)字体属性。

问候,约尔格

于 2014-12-19T13:25:26.773 回答
4

为此,我会创建自己的 MessageBox 类 - 也许是 BigMessageBox?然后就是用 BigMessageBox.Show 替换 MessageBox.Show。

另一种选择是使用 Windows 挂钩来修改表单 - 查看https://web.archive.org/web/20091208060754/http://msdn.microsoft.com/en-gb/magazine/cc188920.aspx .net 1.0 中的示例。在当前版本中这可能更容易,但我找不到适合您的示例。

于 2008-10-24T00:45:14.640 回答
4

使用带有文本框和两个按钮的表单,确定,取消就可以了。在整个项目中使用此表单而不是 MessageBox。您可以即时更改文本框的字体、背景颜色、多行等。您也可以更改按钮的大小、颜色和字体。

于 2009-11-04T16:45:04.683 回答
2

有一个解决方案——通过安装 CBT 挂钩,可以动态调整各种 MessageBox 视觉设置:消息和按钮字体、对话框背景、对话框定位、图标、按钮标题、超时等。

扩展 MessageBox .NET 程序集 http://www.news2news.com/vfp/?solution=5

于 2010-05-12T14:31:46.203 回答