【问题标题】:Scrolling the TStringGrid pixel by pixel逐像素滚动 TStringGrid
【发布时间】:2011-10-24 13:48:50
【问题描述】:

使用水平滚动条滚动 TStringGrid 将一次滚动一列。在某些情况下,这会产生一种非常恶劣的行为,使网格无法使用:如果最后一列的宽度很大(例如,1000 像素),用户将无法滚动网格以查看该列的全部内容。

有办法按像素滚动吗?或者为网格的滚动条设置正确的滚动范围?

【问题讨论】:

  • 如果您不喜欢自己绘制单元内部,那么this component 可以作为起点(作为起点)?

标签: delphi


【解决方案1】:

据我所知,不,您不能水平滚动字符串或按像素绘制网格,只能按整列。我同意这可能是一个问题。我倾向于自动调整列的大小,但使任何列的最大初始大小略小于控件的客户端宽度。

【讨论】:

  • 你好 MarkF。为什么要让列变小一点?您是否因此获得了更好的行为?
【解决方案2】:

我查看了源代码。使用 Borland 的代码无法完成。 但是,Lazarus 有这种能力。

【讨论】:

  • 为什么这个答案优于 5 天前给出的答案?
  • 我实际上查看了源代码以查看问题出在哪里以及是否可以修复。我还启动了 Lazarus 并进行了测试以查看它对此的支持。我已经将一些程序迁移到 Lazarus,并且对像素滚动的支持是一个很好的奖励/激励措施。 Embarcadero 的新定价政策非常烦人。
猜你喜欢
  • 2011-08-12
  • 1970-01-01
  • 2011-03-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-18
  • 1970-01-01
相关资源
最近更新 更多