pyqt项目实战1

from PyQt5.Qt import *
class Window(QWidget):
    def __init__(self,parent=None):
        super().__init__(parent)
        self.parent=parent
        self.setWindowTitle("NB的系统")
        self.resize(1220,760)
        self.setup_ui()

    def setup_ui(self):
        layout=QVBoxLayout()
        self.setLayout(layout)
        layout.addLayout(self.init_header())
        layout.addLayout(self.init_form())
        layout.addLayout(self.init_table())
        layout.addLayout(self.init_footer())
    def init_header(self):
        header_layout=QHBoxLayout()
        btn_start=QPushButton("开始")
        btn_stop=QPushButton("停止")
        header_layout.addWidget(btn_start)
        header_layout.addWidget(btn_stop)
        header_layout.addStretch()
        return header_layout
    def init_form(self):

        #2.创建上面标题布局
        form_layout=QHBoxLayout()

        #2.1 输入框
        txt_asin=QLineEdit()
        txt_asin.setPlaceholderText("请输入商品ID的价格,例如:B0818JJQQ8=88")
        form_layout.addWidget(txt_asin)

        #2.2 添加按钮
        btn_add=QPushButton("添加")
        form_layout.addWidget(btn_add)

        return form_layout
    def init_table(self):
        # 3 创建中间表格
        table_layout=QHBoxLayout()

        #3.1 创建表格
        table_widget=QTableWidget(0,8)
        table_header=[
            {"field":"asin","text":"ASIN","width":120},
            {"field":"title","text":"标题","width":150},
            {"field":"url","text":"URL","width":400},
            {"field":"price","text":"底价","width":100},
            {"field":"sucess","text":"成功次数","width":100},
            {"field":"error","text":"失败次数","width":100},
            {"field":"status","text":"状态","width":100},
            {"field":"frequency","text":"频率(N秒/次)","width":100},
        ]
        for idx,info in enumerate(table_header):
            item = QTableWidgetItem()
            item.setText(info["text"])
            table_widget.setHorizontalHeaderItem(idx,item)
            table_widget.setColumnWidth(idx, info['width'])
        table_layout.addWidget(table_widget)

        return table_layout
    def init_footer(self):
        footer_layout=QHBoxLayout()

        label_status=QLabel("未检测")
        footer_layout.addWidget(label_status)

        footer_layout.addStretch()

        btn_reinit=QPushButton("重新初始化")
        footer_layout.addWidget(btn_reinit)

        btn_recheck=QPushButton("重新检测")
        footer_layout.addWidget(btn_recheck)

        btn_reset_count=QPushButton("次数清零")
        footer_layout.addWidget(btn_reset_count)

        btn_delete=QPushButton("删除检测项")
        footer_layout.addWidget(btn_delete)

        return footer_layout

该代码为本人从视频课程中习得,非常感谢原作者。先把框架保存下,后续会把该项目代码一并发出。原作者是结合实战项目,很有价值。对你有帮助请点个赞!谢谢

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值