def __init__(self):
        super().__init__()
        self.tableWidget = QTableWidget()
        self.tableWidget.setColumnCount(4)
        self.tableWidget.setHorizontalHeaderItem(0,
                                                 QTableWidgetItem("process"))
        self.tableWidget.setHorizontalHeaderItem(
            1, QTableWidgetItem("Arrival Time"))
        self.tableWidget.setHorizontalHeaderItem(
            2, QTableWidgetItem("Burst Time"))
        self.tableWidget.setHorizontalHeaderItem(3,
                                                 QTableWidgetItem("Priority"))

        self.main_label = QLabel("Priority (Non-Preemptive)")
        self.main_label.setFont(QtGui.QFont("sanserif", 30))
        self.main_label.setStyleSheet("color : #800000")

        self.TA = QLabel("")
        self.TA.setFont(QtGui.QFont("sanserif", 20))
        self.TA.setStyleSheet("color : #800000")

        self.WT = QLabel("")
        self.WT.setFont(QtGui.QFont("sanserif", 20))
        self.WT.setStyleSheet("color : #800000")

        self.plot_graph = 0
        self.colors_list = 0
        self.process_name_label = QLabel("Enter process name  : ")
        self.Process_name_input = QLineEdit()
        self.process_number_label = QLabel("Enter number of processes  : ")
        self.Process_number_input = QLineEdit()
        self.burst_time_label = QLabel("Enter burst time  : ")
        self.burst_time_input = QLineEdit()
        self.arrival_time_label = QLabel("Enter arrival time  : ")
        self.arrival_time_input = QLineEdit()
        self.priority_label = QLabel("Enter Priority  : ")
        self.priority_input = QLineEdit()

        self.add_btn = QPushButton('Add Process')
        self.plot_btn = QPushButton('Plot')
        self.back_btn = QPushButton('Back')
        self.process_number_added_btn = QPushButton('Next')

        self.count = 0
        self.sorted_list = process.processList()

        self.h_box1 = QHBoxLayout()
        self.h_box1.addStretch()
        self.h_box1.addWidget(self.add_btn)
        self.h_box1.addStretch()

        self.h_box3 = QHBoxLayout()
        self.main_init()

        self.h_box4 = QHBoxLayout()
        self.h_box4.addStretch()
        self.h_box4.addWidget(self.plot_btn)
        self.h_box4.addStretch()

        self.h_box5 = QHBoxLayout()
        self.h_box5.addStretch()
        self.h_box5.addWidget(self.process_number_added_btn)
        self.h_box5.addStretch()

        self.h_box_back = QHBoxLayout()
        self.h_box_back.addStretch()
        self.h_box_back.addWidget(self.back_btn)
        self.h_box_back.addStretch()

        self.v_box1 = QVBoxLayout()
        self.v_box1.addLayout(self.h_box3)

        self.v_box1.addWidget(self.process_number_label)
        self.v_box1.addWidget(self.Process_number_input)

        self.v_box1.addWidget(self.process_name_label)
        self.v_box1.addWidget(self.Process_name_input)

        self.v_box1.addWidget(self.burst_time_label)
        self.v_box1.addWidget(self.burst_time_input)

        self.v_box1.addWidget(self.priority_label)
        self.v_box1.addWidget(self.priority_input)

        self.v_box1.addWidget(self.arrival_time_label)
        self.v_box1.addWidget(self.arrival_time_input)
        self.v_box1.addLayout(self.h_box1)
        self.v_box1.addLayout(self.h_box4)
        self.v_box1.addLayout(self.h_box5)
        self.v_box1.addLayout(self.h_box_back)
        self.v_box1.addWidget(self.tableWidget)
        self.v_box1.addWidget(self.TA)
        self.v_box1.addWidget(self.WT)
        self.v_box1.addStretch()
        self.setLayout(self.v_box1)
        self.show_process_number_input()

        self.add_btn.clicked.connect(self.add_btn_click)
        self.plot_btn.clicked.connect(self.plot_btn_click)
        self.back_btn.clicked.connect(self.back_btn_click)
        self.process_number_added_btn.clicked.connect(
            self.process_number_added_btn_click)

        self.show()
Пример #2
0
    def __init__(self):
        super().__init__()
        self.tableWidget = QTableWidget()
        self.tableWidget.setColumnCount(3)
        self.tableWidget.setHorizontalHeaderItem(0, QTableWidgetItem("process"))
        self.tableWidget.setHorizontalHeaderItem(1, QTableWidgetItem("Arrival Time"))
        self.tableWidget.setHorizontalHeaderItem(2, QTableWidgetItem("Burst Time"))


        self.main_label = QLabel("Round Robin")
        self.main_label.setFont(QtGui.QFont("sanserif", 30))
        self.main_label.setStyleSheet("color : #800000")
        self.process_name_label = QLabel("Enter process name  : ")
        self.Process_name_input = QLineEdit()
        self.burst_time_label = QLabel("Enter burst time  : ")
        self.burst_time_input = QLineEdit()
        self.arrival_time_label = QLabel("Enter arrival time  : ")
        self.arrival_time_input = QLineEdit()
        self.quantum_time_label = QLabel("Enter Quantum time  : ")
        self.quantum_time_input = QLineEdit()

        self.next_btn = QPushButton('Next')
        self.add_btn = QPushButton('Add Process')
        self.plot_btn = QPushButton('Plot')
        self.back_btn = QPushButton('Back')

        self.count = 0
        self.sorted_list = process.processList()

        self.h_box1 = QHBoxLayout()
        self.h_box1.addStretch()
        self.h_box1.addWidget(self.add_btn)
        self.h_box1.addStretch()

        self.h_box2 = QHBoxLayout()
        self.h_box2.addStretch()
        self.h_box2.addWidget(self.next_btn)
        self.h_box2.addStretch()

        self.h_box3 = QHBoxLayout()
        self.main_init()

        self.h_box4 = QHBoxLayout()
        self.h_box4.addStretch()
        self.h_box4.addWidget(self.plot_btn)
        self.h_box4.addStretch()

        self.h_box_back = QHBoxLayout()
        self.h_box_back.addStretch()
        self.h_box_back.addWidget(self.back_btn)
        self.h_box_back.addStretch()

        self.v_box1 = QVBoxLayout()
        self.v_box1.addLayout(self.h_box3)
        self.v_box1.addWidget(self.process_name_label)
        self.v_box1.addWidget(self.Process_name_input)

        self.v_box1.addWidget(self.burst_time_label)
        self.v_box1.addWidget(self.burst_time_input)

        self.v_box1.addWidget(self.arrival_time_label)
        self.v_box1.addWidget(self.arrival_time_input)
        self.v_box1.addWidget(self.quantum_time_label)
        self.v_box1.addWidget(self.quantum_time_input)
        self.v_box1.addLayout(self.h_box1)
        self.v_box1.addLayout(self.h_box2)
        self.v_box1.addLayout(self.h_box4)
        self.v_box1.addLayout(self.h_box_back)
        self.v_box1.addWidget(self.tableWidget)
        self.v_box1.addStretch()
        self.setLayout(self.v_box1)
        self.show_main()

        self.next_btn.clicked.connect(self.next_btn_click)
        self.add_btn.clicked.connect(self.add_btn_click)
        self.plot_btn.clicked.connect(self.plot_btn_click)
        self.back_btn.clicked.connect(self.back_btn_click)
        self.show()