c++ 在FLTK中创建可关闭选项卡

fkvaft9z  于 2023-01-06  发布在  其他
关注(0)|答案(1)|浏览(163)

我是C++中使用FLTK的新手,我正在学习小部件,有一个叫做Fl_Tabs的类,它使用插入其中的小部件的标签创建一个新的标签。
但是,无法与此选项卡标签交互。
我希望用户能够点击标签上的按钮来关闭它,我希望他们能够与菜单栏交互来添加新的标签...
下面是我当前代码:

#include <FL/Fl.H>
#include <FL/Fl_Window.H>
#include <FL/Fl_Button.H>
#include <FL/Enumerations.H>
 
int main(int argc, char **argv) {
  Fl_Window window(Fl::w()/2,Fl::h()/2, "test");

  Fl_Box windowBox(0,32,window.w(),window.h()-32);
  window.resizable(&windowBox);
  Fl_Tabs mainTabs(0,32,window.w(),window.h()-32);
  Fl_Group tab1(0,64,window.w(),window.h()-32, "Tab 1");
  tab1.end();
  Fl_Group tab2(0,64,window.w(),window.h()-32, "Tab 1");
  tab2.end();
  Fl_Group tab3(0,64,window.w(),window.h()-32, "Tab 1");
  tab3.end();
  mainTabs.end();

  window.end();
  window.show(argc, argv);
  return Fl::run();
}

如何在标签上添加关闭按钮?

jmo0nnb3

jmo0nnb31#

Fl_Tabs不提供该功能。您可以通过在组本身中添加关闭按钮来解决该问题。向Fl_Tabs添加和删除单个选项卡可以使用“add”和“remove”,就像任何其他Fl_Group一样。
这个功能将在1月23日的某个时候加入,所以如果你在GitHub上观看大师,你应该很快就能使用这个功能了。
tab 1、2和3的高度可能应该是window.h()-64,而不是32。

相关问题