var plugin = require('topsin.gengui'); var gui = plugin.newGui(plugin.__dirname); var headers = [ {}, { name: 'analysis_item', display: 'Analysis Item', resizeMode: 'ResizeToContents', displayRole: '$analysis_item' }, { name: 'analysis_result', display: 'Analysis Result', resizeMode: 'ResizeToContents', displayRole: '$analysis_result' }, { name: 'result', display: 'Result', resizeMode: 'ResizeToContents', displayRole: '$result' }, { name: 'standard', display: 'Standard', resizeMode: 'ResizeToContents', displayRole: '$standard' }, { name: 'remark', display: 'Remark', resizeMode: 'ResizeToContents', displayRole: '$remark', editRole: '$remark', flagsRole: 'ItemIsEditable|ItemIsEnabled|ItemIsSelectable' } ]; var item_list = [ { name: "male", icon: "male", text: "男", text_zhcn: "男", text_zhtw: "男" }, { name: "female", icon: "female", text: "女", text_zhcn: "女", text_zhtw: "女" }, ]; r = gui.showForm({ title: "BUG#10475", size: '600x400', items: { type: 'ScrollArea', property: { widget_resizable: true, frame_shape: 'NoFrame', align: 'Top' }, child: { type: 'VBoxLayout', property: { margin: 2, spacing: 20, align: 'Top' }, pack: { stretch: 0 }, child: [ { type: "FormGridLayout", property: { columns: 1, label_alignment: 'Top | Right', margin: 10, spacing: 20 }, pack: { stretch: 0 }, child: [ { name: 'username', type: 'LineEdit', pack: { label: "用户名" }, property: { enabled: true } }, { name: 'password', type: 'LineEdit', pack: { label: "密码" }, property: { echo_mode: "password" } }, { name: 'sex', type: 'ComboBox', property: { enabled: true, item_list:item_list }, pack: { label: '性别' } }, { name: 'table', type: 'TableView', property: {}, pack: { label: '性别' }, initCallback: function (obj, self) { obj.setHeaderItem(headers); obj.setDataKeyList(["id", "analysis_item", "analysis_result", "result", "standard", "remark"]); obj.setPrimaryKey("id"); } } ] } ] } } }); print(JSON.stringify(r, null, ' '));