在运行时对齐按钮
我在运行时遇到按钮对齐问题。我希望它们在面板的中心对齐。我有 TPanel,其中包含运行时创建的按钮。我希望它们动态地均匀地填充整个面板区域。
假设我一行中有三个按钮 - 每个按钮宽度为 50 像素。我的面板宽度为 350px。
- 我将面板宽度除以行中按钮的数量 (Trunc(350/3)=116)。获取按钮区域宽度。
- 现在我从按钮宽度中减去按钮区域宽度以获得边距(116-50=66)
- 将边距除以2以获得左右边距(Trunc(66/2)= 33)
- 并从左边距开始定位我的按钮等等。
但这不能正常工作。我做错了什么?我的面板也有一个右锚。因此,如果我调整表单大小,面板也会调整大小,但按钮不会对齐。
我该如何解决这个问题?
I have a problem with buttons align on runtime. I want them to align in center of the panel. I have TPanel, which contains buttons that are created runtime. I want them dynamically fill the whole panel area evenly.
Let's say I have three buttons in row - each buttons width 50px. And my panel has width 350px.
- I divide panel width to number of buttons in row (Trunc(350/3)=116). Got button area width.
- Now I substract the button area width from button width to get the margins (116-50=66)
- Divide margins to 2 to get left and right margin (Trunc(66/2)=33)
- And position my buttons, starting from left margin and so on.
But this doesn't work correctly. What I'm doing wrong? Also my panel has a right anchor. So if I resize my form, the panel resizes, but buttons do not align.
How can I solve this problem?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
只是建议,使用 TGridPanel。设置列并设置在按钮上对齐客户端。它应该做同样的事情,尽管我还没有测试过。
Just a suggestion, use a TGridPanel. Set up columns and set align client on buttons. It should do the same, although I haven't tested it.