demoPySideLoader.py

demoPySideLoader.py
1 import MaxPlus
2 import os
3 from PySide2.QtWidgets import QTabWidget
4 
5 class TestWidget(QTabWidget):
6  def __init__(self, ui_class, parent=None):
7  QTabWidget.__init__(self, parent)
8  self.ui= ui_class()
9  self.ui.setupUi(self)
10 
11 def test_load_ascii_ui_path(ui_path):
12  ui_class, base_class = MaxPlus.LoadUiType(ui_path)
13  instance = TestWidget(ui_class)
14  instance.show()
15  instance.close()
16 
17 def test_load_ui():
18  ui_path = os.path.join(os.path.dirname(__file__), "test_ui.ui")
19  test_load_ascii_ui_path(ui_path)
20  # test unicode encoding
21  test_load_ascii_ui_path(u'%s' % ui_path)
22  # test a unicode encoding with non-ascii characters
23  try:
24  test_load_ascii_ui_path(u'D:/你好')
25  except UnicodeEncodeError:
26  pass
27  else:
28  print "Error: unexpected exception"
29 
30 
31 if __name__ == "__main__":
32  test_load_ui()