gpt4 book ai didi

.net - Tabcontrol:如何删除标签页标题?

转载 作者:行者123 更新时间:2023-12-02 12:01:39 25 4
gpt4 key购买 nike

我有一个选项卡控件,用于在应用程序中显示多个图像文件。我想在仅显示一个选项卡页时删除选项卡页标题,以便我可以使用该屏幕空间来显示图像。 (这类似于在 Firefox 中取消选择“始终显示选项卡栏”。)

这可以用 tabcontrol 来做吗?或者,当仅打开一个文件(选项卡)时,我是否最好使用面板控件?

最佳答案

是的,这是可能的。将新类添加到您的项目中并粘贴下面所示的代码。编译。将新控件从工具箱顶部拖放到表单上。

using System;
using System.Windows.Forms;

public class MyTabControl : TabControl {
private int mPages = 0;
private void checkOnePage() {
if (IsHandleCreated) {
int pages = mPages;
mPages = this.TabCount;
if ((pages == 1 && mPages > 1) || (pages > 1 && mPages == 1))
this.RecreateHandle();
}
}
protected override void OnControlAdded(ControlEventArgs e) {
base.OnControlAdded(e);
checkOnePage();
}
protected override void OnControlRemoved(ControlEventArgs e) {
base.OnControlRemoved(e);
checkOnePage();
}
protected override void WndProc(ref Message m) {
// Hide tabs by trapping the TCM_ADJUSTRECT message
if (m.Msg == 0x1328 && !DesignMode && this.TabCount == 1) m.Result = (IntPtr)1;
else base.WndProc(ref m);
}
}

关于.net - Tabcontrol:如何删除标签页标题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1824036/

25 4 0