Hi Paolo, I again tried your original code, and this time got an error:
c:\Src\paolo_orig>python pyDBManager.py Traceback (most recent call last): File "c:\Src\paolo_orig\pyDBManager.py", line 166, in <module> window = MainWindow() File "c:\Src\paolo_orig\pyDBManager.py", line 61, in __init__ self.ui.setupUi(self) File "c:\Src\paolo_orig\Ui\DBManagerMainWindowBad.py", line 246, in setupUi self.tab_widget.setCurrentIndex(3) AttributeError: 'PySide6.QtWidgets.QSpacerItem' object has no attribute 'hasHeightForWidth' I had rebuilt your code by editing your batch file to fix directories on my system and ran it. This runs uic and rcc. I diffed the results with yours. Earlier I had missed differences in the generated "UI\DBManagerMainWindowBad.py" in line 246: Yours: self.tab_widget.setCurrentIndex(3) Mine: self.tab_widget.setCurrentIndex(0) I don't know why the generated file was different; perhaps because I am using 6.2 tool and you are using 6.3. But, when I changed mine to be like yours, I got the same error. Having reproduced your issue, I tried moving the snake_case enabling before and after the import of the generated code, and it made no difference, i.e. there was an error with both: from Ui.DBManagerMainWindowBad import Ui_DBManagerMainWindow from __feature__ import snake_case, true_property and from __feature__ import snake_case, true_property from Ui.DBManagerMainWindowBad import Ui_DBManagerMainWindow Since that failed, I disabled snake_case --- I verify with you that it fixes it! I commented out #from __feature__ import snake_case, true_property And to avoid Atttribute errors at runtime, changed the necessary calls to methods of the "self.ui.xxx" widgets to use camelCase e.g. #self.ui.status_bar.add_permanent_widget(self.status_log) self.ui.status_bar.addPermanentWidget(self.status_log) Then it worked --- there does seem to be an error in generated code if snake case is enabled. Thanks, David -----Original Message----- From: Paolo De Stefani <pa...@paolodestefani.it> Sent: Tuesday, April 26, 2022 11:04 AM To: David Ching <d...@dcsoft.com> Cc: pyside@qt-project.org Subject: Re: [PySide] QtDesigner ??? I also noted that the error message is different if a modify the generated pyDBManagerMainWIndowBad.py the original error is: C:\PyWare\pyDBManager\Bug>python pyDBManager.py Traceback (most recent call last): File "C:\PyWare\pyDBManager\Bug\pyDBManager.py", line 161, in <module> window = MainWindow() File "C:\PyWare\pyDBManager\Bug\pyDBManager.py", line 56, in __init__ self.ui.setupUi(self) File "C:\PyWare\pyDBManager\Bug\DBManagerMainWindowBad.py", line 133, in setupUi self.gridLayout.setContentsMargins(0, 0, 0, 0) AttributeError: 'PySide6.QtWidgets.QGridLayout' object has no attribute 'setContentsMargins'. Did you mean: 'getContentsMargins'? If i add even an import line like import os and run again the script the error message is: C:\PyWare\pyDBManager\Bug>python pyDBManager.py Traceback (most recent call last): File "C:\PyWare\pyDBManager\Bug\pyDBManager.py", line 161, in <module> window = MainWindow() File "C:\PyWare\pyDBManager\Bug\pyDBManager.py", line 56, in __init__ self.ui.setupUi(self) File "C:\PyWare\pyDBManager\Bug\DBManagerMainWindowBad.py", line 30, in setupUi if not DBManagerMainWindow.objectName(): AttributeError: 'MainWindow' object has no attribute 'objectName'. Did you mean: 'object_name'? Why this behaviour ??? But looks like direct linked to the snake_case option _______________________________________________ PySide mailing list PySide@qt-project.org https://lists.qt-project.org/listinfo/pyside