1

我正在尝试动态地向 GridBagSizer 添加和删除行。sizer 的每一行都有一组小部件,最右边的是一个“删除”按钮,当按下它时,它会删除它所在的行。sizer 之外的另一个按钮在按下时会在 sizer 中添加一个新的底行小部件。

我有一个可以运行的简单示例应用程序,但它相当巴洛克式,我希望有一种更简单的方法。

工作示例分离并销毁正在删除的行中的所有小部件,但这不会删除小部件曾经所在的空白行,即使在 sizer.Layout() 之后也是如此。我为解决这个问题所做的是将所有小部件分离到已删除行下方的行中,并将它们向上移动一排。

它有效,但有更好的方法吗?

罗斯

4

1 回答 1

1

这真的是一个小窍门。利用

sizer.SetEmptyCellSize((0,0))

你的空行不会占用任何空间。

于 2013-12-12T08:01:36.787 回答