從存儲在關聯數組內的顯示框獲取數據嘿,
我試圖擁有一個數組,該數組將信息保存為鍵並將框顯示為值,但之後我似乎無法獲得它們的正確狀態(對於復選框) - 即使按下,所有復選框也會返回為0 。
我似乎無法理解這是由於語法問題還是更深層次的問題,這是我的代碼:
MainDisplayBox = V List Box();
DisplayArray = Associative Array();
current data table(dt);
For Each Row(
DisplayArray[char(:Col1)] = list(checkbox(""),hlist box(
text box(char(:Col1)||": suggested value: "),
Text Edit Box(round(:Col2,3)),
));
MainDisplayBox << append(hlistbox(eval((DisplayArray[Col1][1])),eval((DisplayArray[Col1][2]))));
);
OffsetCloseButton = Button Box("close",OffsetWindow<<CLOSE window=""></CLOSE>
謝謝,
本.
高級統計建模自動化和腳本編寫消費者和市場研究大規模定制質量和工藝工程回复:從存儲在關聯數組內的顯示框獲取數據謝謝!
引用的處理方式很奇怪,但我明白你的觀點,你的方法通過在表中搜索一些數據更容易管理,所以它對我來說效果很好。
關於數組中數據的覆蓋 - 我循環的表是一個匯總表,因此重複不是問題:)
再次感謝,
本.
回复:從存儲在關聯數組內的顯示框獲取數據至少在將組合框引用保存到 DisplayArray 的方式上存在問題。 通過檢查 DisplayArray 的值,您可以很容易地看到它。 複選框被視為:
Check Box("")當它們應該被視為這樣的時候:
nw = new window("", cb = checkbox("test")); //<STRONG>cb = DisplayBox[CheckBoxBox]</STRONG>
因此,您將在 DisplayArray 中保存帶有空值的新復選框,而不是引用複選框的 DisplayBox。
我還認為可能有比當前更簡單的方法來構建此復選框選擇窗口。 您能否提供例如圖像以及您想要它做什麼? 例如,您當前使用 For Each Row() 循環數據表中的每一行,然後使用 Associative Array() 保存顯示框。 關聯數組每個鍵只有一個值,因此如果 :Col1 上有重複的值,您將只能獲得最後一個“值”。
使用 Big Class 數據表的快速示例可能會給您一些想法:
查看更多...