Listbox, Combobox, Spinner returns values supplied to it instead of strings.
This commit is contained in:
		
							parent
							
								
									f382823810
								
							
						
					
					
						commit
						b78fc60115
					
				
					 1 changed files with 28 additions and 12 deletions
				
			
		|  | @ -4249,17 +4249,31 @@ def BuildResultsForSubform(form, initialize_only, top_level_form): | ||||||
|                 elif element.Type == ELEM_TYPE_INPUT_COMBO: |                 elif element.Type == ELEM_TYPE_INPUT_COMBO: | ||||||
|                     element = element           # type: Combo |                     element = element           # type: Combo | ||||||
|                     # value = element.QT_ComboBox.currentText() |                     # value = element.QT_ComboBox.currentText() | ||||||
|                     value = element.Values[element.QT_ComboBox.currentIndex()] |                     try: | ||||||
|  |                         value = element.Values[element.QT_ComboBox.currentIndex()] | ||||||
|  |                     except: | ||||||
|  |                         value = None | ||||||
|                 elif element.Type == ELEM_TYPE_INPUT_OPTION_MENU: |                 elif element.Type == ELEM_TYPE_INPUT_OPTION_MENU: | ||||||
|                     value = 0 |                     value = 0 | ||||||
|                 elif element.Type == ELEM_TYPE_INPUT_LISTBOX: |                 elif element.Type == ELEM_TYPE_INPUT_LISTBOX: | ||||||
|                     try: |                     element = element            # type: Listbox | ||||||
|                         value= [item.text() for item in element.QT_ListWidget.selectedItems()] |                     # print(f'selected indexes = {element.QT_ListWidget.selectedIndexes()}') | ||||||
|                     except: |                     value = [] | ||||||
|                         value = [] |                     # value = [element.Values[int(i)] for i in element.QT_ListWidget.selectedIndexes()] | ||||||
|  |                     # value= [ for i, item in enumerate(element.QT_ListWidget.selectedItems()] | ||||||
|  |                     selected_items = [item.text() for item in element.QT_ListWidget.selectedItems()] | ||||||
|  |                     for v in element.Values: | ||||||
|  |                         if str(v) in selected_items: | ||||||
|  |                             value.append(v) | ||||||
|  |                     # try: | ||||||
|  |                     #     value= [item.index() for item in element.QT_ListWidget.selectedItems()] | ||||||
|  |                     #     # value= [item.text() for item in element.QT_ListWidget.selectedItems()] | ||||||
|  |                     # except: | ||||||
|  |                     #     value = [] | ||||||
|                 elif element.Type == ELEM_TYPE_INPUT_SPIN: |                 elif element.Type == ELEM_TYPE_INPUT_SPIN: | ||||||
|                     # value = str(element.QT_Spinner.value()) |                     # value = str(element.QT_Spinner.value()) | ||||||
|                     value = str(element.QT_Spinner.textFromValue(element.QT_Spinner.value())) |                     # value = str(element.QT_Spinner.textFromValue(element.QT_Spinner.value())) | ||||||
|  |                     value = element.Values[element.QT_Spinner.value()] | ||||||
|                 elif element.Type == ELEM_TYPE_INPUT_DIAL: |                 elif element.Type == ELEM_TYPE_INPUT_DIAL: | ||||||
|                     value = str(element.QT_Dial.value()) |                     value = str(element.QT_Dial.value()) | ||||||
|                 elif element.Type == ELEM_TYPE_INPUT_SLIDER: |                 elif element.Type == ELEM_TYPE_INPUT_SLIDER: | ||||||
|  | @ -4948,7 +4962,8 @@ def PackFormIntoFrame(window, containing_frame, toplevel_win): | ||||||
|                 if element.ChangeSubmits: |                 if element.ChangeSubmits: | ||||||
|                     element.QT_ListWidget.currentRowChanged.connect(element.QtCurrentRowChanged) |                     element.QT_ListWidget.currentRowChanged.connect(element.QtCurrentRowChanged) | ||||||
| 
 | 
 | ||||||
|                 element.QT_ListWidget.addItems(element.Values) |                 items = [str(v) for v in element.Values] | ||||||
|  |                 element.QT_ListWidget.addItems(items) | ||||||
|                 if element.Tooltip: |                 if element.Tooltip: | ||||||
|                     element.QT_ListWidget.setToolTip(element.Tooltip) |                     element.QT_ListWidget.setToolTip(element.Tooltip) | ||||||
|                 if not element.Visible: |                 if not element.Visible: | ||||||
|  | @ -5238,10 +5253,10 @@ def PackFormIntoFrame(window, containing_frame, toplevel_win): | ||||||
|             elif element_type == ELEM_TYPE_GRAPH: |             elif element_type == ELEM_TYPE_GRAPH: | ||||||
|                 element = element               # type: Graph |                 element = element               # type: Graph | ||||||
|                 width, height = element_size |                 width, height = element_size | ||||||
|                 print(f'Graph element size = {element_size}') |                 # print(f'Graph element size = {element_size}') | ||||||
|                 element.Widget = element.QT_QGraphicsView = qgraphicsview = QGraphicsView() |                 element.Widget = element.QT_QGraphicsView = qgraphicsview = QGraphicsView() | ||||||
|                 # element.QT_QGraphicsView.setGeometry(0,0,element.CanvasSize[0],element.CanvasSize[1]) |                 # element.QT_QGraphicsView.setGeometry(0,0,element.CanvasSize[0],element.CanvasSize[1]) | ||||||
|                 print(f'Graph Canvas size = {element.CanvasSize}') |                 # print(f'Graph Canvas size = {element.CanvasSize}') | ||||||
| 
 | 
 | ||||||
|                 element.QT_QGraphicsScene = QGraphicsScene() |                 element.QT_QGraphicsScene = QGraphicsScene() | ||||||
|                 element.QT_QGraphicsScene.setSceneRect(0,0,element.CanvasSize[0],element.CanvasSize[1]) |                 element.QT_QGraphicsScene.setSceneRect(0,0,element.CanvasSize[0],element.CanvasSize[1]) | ||||||
|  | @ -5251,7 +5266,7 @@ def PackFormIntoFrame(window, containing_frame, toplevel_win): | ||||||
|                 style.add(background_color=(element.BackgroundColor, COLOR_SYSTEM_DEFAULT)) |                 style.add(background_color=(element.BackgroundColor, COLOR_SYSTEM_DEFAULT)) | ||||||
|                 style.add(margin='{}px {}px {}px {}px'.format(*full_element_pad)) |                 style.add(margin='{}px {}px {}px {}px'.format(*full_element_pad)) | ||||||
|                 style.add(border='{}px solid gray '.format(border_depth)) |                 style.add(border='{}px solid gray '.format(border_depth)) | ||||||
|                 print(f'style content = {style.content}') |                 # print(f'style content = {style.content}') | ||||||
|                 element.QT_QGraphicsView.setStyleSheet(style.content) |                 element.QT_QGraphicsView.setStyleSheet(style.content) | ||||||
| 
 | 
 | ||||||
|                 qgraphicsview.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff) |                 qgraphicsview.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff) | ||||||
|  | @ -7302,8 +7317,9 @@ def main(): | ||||||
|     frame2 = [ |     frame2 = [ | ||||||
|         [Listbox(['Listbox 1', 'Listbox 2', 'Listbox 3', 'Item 4', 'Item 5'], size=(200, 85), tooltip='Listbox', |         [Listbox(['Listbox 1', 'Listbox 2', 'Listbox 3', 'Item 4', 'Item 5'], size=(200, 85), tooltip='Listbox', | ||||||
|                     key='_LISTBOX_', font='Courier 12', text_color='red', background_color='white')], |                     key='_LISTBOX_', font='Courier 12', text_color='red', background_color='white')], | ||||||
|         [Combo(['Combo item 1', 'Combo item 2', 'Combo item 3'], size=(200, 35), tooltip='Combo', visible_items=2)], |         [Combo([1,2,3], size=(200, 35), tooltip='Combo', visible_items=2, key='_COMBO_')], | ||||||
|         [Spin([1, 2, 3], size=(40, 30), tooltip='Spinner')], |         [Spin([1, 2, 3], size=(40, 30), tooltip='Spinner', key='_SPIN1_')], | ||||||
|  |         [Spin(['Combo item 1', 'Combo item 2', 'Combo item 3'], size=(240, 30), tooltip='Spinner', key='_SPIN2_')], | ||||||
|     ] |     ] | ||||||
| 
 | 
 | ||||||
|     frame3 = [ |     frame3 = [ | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue