【问题标题】:C# Icon on button (resizing)按钮上的 C# 图标(调整大小)
【发布时间】:2015-08-05 04:44:29
【问题描述】:

我创建了两个按钮,其中包含一个图像,用作图标。 通过使用 TextImageRelation 属性中的 ImageBeforeText 选项,它们看起来像这样:

如果我为小按钮选择大图像,它将覆盖整个按钮;如果我为大按钮选择小图像,相比之下它看起来会很小。此外,我正在使用 TableLayoutPanel 并为每一行和每一列分配百分比,因此所有控件(包括这两个按钮)彼此成比例,并且如果调整表单大小或使用不同的分辨率,仍然看起来“有条理”。

这就是问题所在:事实上,如果我调整表单的大小,这两个按钮和所有其他控件都会随之出现(因为 TableLayoutPanel),但是这两个按钮中的图标却没有。有没有办法确保图标也调整大小,以便它们可以与按钮成比例?

【问题讨论】:

  • 你能分享一些工作演示吗?我想我理解你的问题,但看到确切的UI 样本会很有趣。我的建议是按钮永远不应该改变它们的大小......最多,你会改变它们的对齐方式,但是它们的大小?不过,这并不能回答您的问题。
  • @LeandroTaset 我的按钮必须更改大小,因为我的客户希望它们更改。这就是为什么我使用 TableLayoutPanel 和每行/列的百分比,所以只要表单调整大小或分辨率发生变化,按钮就会调整大小并适合。我正在寻求解决不同分辨率的方法(TableLayoutPanel / percents 的想法来自 Microsoft Docs)。
  • @soulblazer:很不幸。现在我真的很想看到至少这样UI 的模型。你的客户可能是错的(他们并不总是对的,你知道的)。如果您仍然想遵守他们的要求,我认为您必须使用自己的绘制方法创建自己的自定义按钮。
  • @LeandroTaset 我知道这听起来很“骇人听闻”,但这是我能找到的唯一方法来解决 WinForms 中的分辨率独立性问题(即:用户调整表单大小或更改分辨率并且一切都不再适合屏幕,但是该解决方案适合...嗯,它适用于我尝试过的分辨率)。在 WPF 中会更容易,但同时也是朋友的客户现在不能购买更新的计算机。
  • @LeandroTaset 遗憾的是,它没有,但我最终制作了一个自定义按钮,可以很好地调整图像大小(使用我在 2 天前找到的已经创建的自定义按钮代码作为指南)。还是谢谢你。

标签: c# image winforms button autoresize


【解决方案1】:

您应该将 Button 的 AutoSize 属性设置为 False

【讨论】:

  • 这将如何使图标调整大小?
  • 这个答案可以说没有解决 " 有没有办法可以确保图标也调整大小,以便它们可以与按钮成比例?"
猜你喜欢
  • 2013-03-17
  • 2014-05-02
  • 1970-01-01
  • 1970-01-01
  • 2011-07-04
  • 1970-01-01
  • 2019-08-29
  • 2021-11-22
  • 1970-01-01
相关资源
最近更新 更多