weixin_44532019 2023-01-10 10:14 采纳率: 70.8%
浏览 63
已结题

python pyqt5学习

问题遇到的现象和发生背景
遇到的现象和发生背景,请写出第一个错误信息
用代码块功能插入代码,请勿粘贴截图。 不用代码块回答率下降 50%
运行结果及详细报错内容
我的解答思路和尝试过的方法,不写自己思路的,回答率下降 60%
我想要达到的结果,如果你需要快速回答,请尝试 “付费悬赏”
  • 写回答

6条回答 默认 最新

  • 阿_旭 2023-01-10 11:03
    关注

    img

    
    # coding:utf-8
    
    import sys
    from PyQt5.QtWidgets import *
    import sys #导系统
    from PyQt5.QtWidgets import *
    from PyQt5.QtGui import *
    from PyQt5.QtCore import *
    
    
    class QTabWidgetDemo(QTabWidget):
        def __init__(self):
            super(QTabWidgetDemo, self).__init__()
    
            self.resize(400, 150)
            #设置窗口标题
            self.setWindowTitle("QTabWidgetDemo")
    
            #创建3个选项卡小控件窗口
            self.tab1 = QWidget()
            self.tab2 = QWidget()
            self.tab3 = QWidget()
    
            #将三个选项卡添加到顶层窗口中
            self.addTab(self.tab1, "Tab 1")
            self.addTab(self.tab2, "Tab 2")
            self.addTab(self.tab3, "Tab 3")
    
            #每个选项卡自定义的内容
            # self.tab1UI()
            # self.tab2UI()
            # self.tab3UI()
    
        def tab1UI(self):
            #表单布局
            layout = QFormLayout()
            #添加姓名,地址的单行文本输入框
            layout.addRow('姓名',QLineEdit())
            layout.addRow('地址',QLineEdit())
            #设置选项卡的小标题与布局方式
            self.setTabText(0,'联系方式')
            self.tab1.setLayout(layout)
    
        def tab2UI(self):
            #zhu表单布局,次水平布局
            layout = QFormLayout()
            sex = QHBoxLayout()
    
            #水平布局添加单选按钮
            sex.addWidget(QRadioButton('男'))
            sex.addWidget(QRadioButton('女'))
    
            #表单布局添加控件
            layout.addRow(QLabel('性别'),sex)
            layout.addRow('生日',QLineEdit())
    
            #设置标题与布局
            self.setTabText(1,'个人详细信息')
            self.tab2.setLayout(layout)
    
        def tab3UI(self):
            #水平布局
            layout = QHBoxLayout()
    
            #添加控件到布局中
            layout.addWidget(QLabel('科目'))
            layout.addWidget(QCheckBox('物理'))
            layout.addWidget(QCheckBox('高数'))
    
            #设置小标题与布局方式
            self.setTabText(2,'教育程度')
            self.tab3.setLayout(layout)
    
    class Home(QWidget):
        def __init__(self):  # 初始化函数
            super(Home,self).__init__()  # 继承QWidget
            self.QTabWidget = QTabWidget()
            self.initUi()  # 直接调用initUi
    
        def initUi(self):
            self.setWindowTitle('学习')#设置标题
            self.setWindowIcon(QIcon(''))#设置主页面的looog
            #获取显示器分辨率来一边设置 之后的窗口设定
            screen = QDesktopWidget().screenGeometry()
            # print(screen.width(),screen.height()) #打印粉分辨率大小
            self.resize(int(screen.width()/2),int(screen.height()/2) )#设置窗口大小
    ##——————————————————————————————————————————————————————————>>>>> 主要页面分割
            self.main_Form() #初始主 窗体
            self.menu_bar()  #初始主 菜单栏
    
            spliter1 = QSplitter(Qt.Horizontal)  # 创建分割
            spliter1.addWidget(self.topleft)  # 装入第一个状体
            self.tab = QTabWidgetDemo()
            spliter1.addWidget(self.tab)
            # spliter1.addWidget(self.textedit)  # 装入第二个窗体
    
            spliter1.setSizes([100, 600])  # 设置窗体比例  1:6
    
            h_layout = QHBoxLayout(self)  # 创建一个布局 水平布局
            h_layout.addWidget(spliter1)  # 将分割装入横向布局
            self.setLayout(h_layout)  # 这句没看懂
        def main_Form(self):
    
            self.textedit = QFrame()  # 创建第二个窗体 调转状体 主窗体
            self.textedit.setFrameShape(QFrame.StyledPanel)  # 第二个窗体显示横线 调转状体 主窗体
    
    
    
        def menu_bar(self): ## 菜单栏
            self.topleft = QFrame()  # 创建一个窗体  菜单栏窗体   QFrame样式可以更改好多种
            self.topleft.setFrameShape(QFrame.StyledPanel)  # 窗体显示横线
            menu_fapiao = QPushButton('页面', self.topleft)  ###创建一个按钮放在 菜单栏窗体中
            h_layout = QVBoxLayout(self.topleft)  #创建垂直布局
            h_layout.addWidget(menu_fapiao)  ##将按钮放在垂直布局中
            h_layout.addStretch()  #弹簧 顶到上面
    
    
    
    
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        ui = Home()
        ui.show()  # 显示主出口
        app.exec_()
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

问题事件

  • 系统已结题 1月18日
  • 已采纳回答 1月10日
  • 创建了问题 1月10日

悬赏问题

  • ¥15 labview程序设计
  • ¥15 为什么在配置Linux系统的时候执行脚本总是出现E: Failed to fetch http:L/cn.archive.ubuntu.com
  • ¥15 Cloudreve保存用户组存储空间大小时报错
  • ¥15 伪标签为什么不能作为弱监督语义分割的结果?
  • ¥15 编一个判断一个区间范围内的数字的个位数的立方和是否等于其本身的程序在输入第1组数据后卡住了(语言-c语言)
  • ¥15 游戏盾如何溯源服务器真实ip?
  • ¥15 Mac版Fiddler Everywhere4.0.1提示强制更新
  • ¥15 android 集成sentry上报时报错。
  • ¥50 win10链接MySQL
  • ¥15 抖音看过的视频,缓存在哪个文件