我使用 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>