我使用 Tab Box() 合并了两个窗口,如以下代码所示。 但正在使一些按钮框不起作用。 它们在单独的盒子里工作得很好。 知道对象引用丢失了什么吗?
Clear Log();
main_window_app_path = Substr( Get Default Directory(), 2, 999 );
main_window_app_path = Substitute( main_window_app_path, "/", "\" );
Show( main_window_app_path );
Set Path Variable( "root", main_window_app_path );
Include( "$root/System/DataAnalysisGUI_Mongo.jsl" );
Include( "$root/System/DataAnalysisGUI_SMV.jsl" );
Include( "$root/System/GUI_Files/Lists.jsl" );
Include( "$root/System/GUI_Files/HelperFunctions.jsl" );
Include( "$root/System/Common/GetDataFromSQLorCSV.jsl" );
Include( "$root/System/Common/wrapper_mongo_data_pull.jsl" );
//********main window****************//
DAGui = New Window( "Database Query",
bb = Border Box( Left( 10 ), Right( 10 ), Top( 10 ), Bottom( 5 ), Sides( 15 ),
V List Box(
Text Box( "GUI to Pull-data from both MongoDB and AVcloud", set font size(10) ),
tb = Text Box( "pre-req: JMP14 and run install_pkg.bat"),
tb << Font Color("yellow") << background color("red") << border(1);
Text Box( "More info: http://goto/jmp_ui"),
Spacer Box( Size( 10, 10 ) ),
H List Box( Tab Box( "MongoDB", Mongo_data, "AvcloudDB", SMV_data ), )
)
),
);
//SMV_data << Close Window();
//Mongo_data << Close Window();
bb << Set Color( "black" );

下面是单独的 Mongo 选项卡窗口。

看起来您拥有的是现有显示树的克隆。我无法判断对象 Mongo_data 是什么 - 如果它是一个已经是较大显示树一部分的显示框,那么在另一个显示树中使用 Mongo_data 会导致克隆,因为单个显示框对象只能存在于一次最多一个窗口。有时克隆就是您想要的,您还可以使用框上的 <
// Define expression that will create a GUI
makeUI = Expr(
Panel Box( "Query Building",
V List Box(
H List Box(
Text Box( "Columns:" ),
Combo Box( {"", "option 2"} ),
Text Box( "Operator:" ),
Combo Box( {"==", "++"} )
),
Text Box( "Condition:" ),
Text Edit Box( "", <<SET width=""></SET>