# coding:utf-8
import kvm
from PyQt5 import QtCore,QtGui,QtWidgets
import sys
import qtawesome #图标字体库
from PyQt5.QtCore import QMetaMethod
from PyQt5.QtWidgets import QAction, QMenu
import dynamic_chart
class MainUi(QtWidgets.QMainWindow):
def __init__(self):
super().__init__()
self.init_ui()
self.conn1=kvm.get_connected("mpiNode1")
self.conn2=kvm.get_connected("mpiNode2")
def init_ui(self):
self.setFixedSize(960,700)
self.main_widget = QtWidgets.QWidget() # 创建窗口主部件
self.main_layout = QtWidgets.QGridLayout() # 创建主部件的网格布局
self.main_widget.setLayout(self.main_layout) # 设置窗口主部件布局为网格布局
self.left_widget = QtWidgets.QWidget() # 创建左侧部件
self.left_widget.setObjectName('left_widget')
self.left_layout = QtWidgets.QGridLayout() # 创建左侧部件的网格布局层
self.left_widget.setLayout(self.left_layout) # 设置左侧部件布局为网格
self.right_widget1 = QtWidgets.QWidget() # 创建右侧部件
self.right_widget1.setObjectName('right_widget')
self.right_layout1 = QtWidgets.QGridLayout()
self.right_widget1.setLayout(self.right_layout1) # 设置右侧部件布局为网格
self.main_layout.addWidget(self.left_widget,0,0,12,2) # 左侧部件在第0行第0列,占8行3列
self.main_layout.addWidget(self.right_widget1, 0, 2, 12, 10) #
self.setCentralWidget(self.main_widget) # 设置窗口主部件
self.left_label_1 = QtWidgets.QLabel("查看")
self.left_label_1.setObjectName('left_label')
self.left_label_2 = QtWidgets.QLabel("修改")
self.left_label_2.setObjectName('left_label')
self.left_button_1 = QtWidgets.QPushButton(qtawesome.icon('fa.home', color='black'), "宿主机")
self.left_button_1.setObjectName('left_button')
self.left_button_2 = QtWidgets.QPushButton(qtawesome.icon('fa.Info', color='black'), "KVM")
self.left_button_2.setObjectName('left_button')
self.left_button_4 = QtWidgets.QPushButton(qtawesome.icon('fa.plus', color='black'), "创建KVM")
self.left_button_4.setObjectName('left_button')
self.left_button_5 = QtWidgets.QPushButton(qtawesome.icon('fa.cut', color='black'), "删除KVM")
self.left_button_5.setObjectName('left_button')
self.left_layout.addWidget(self.left_label_1, 1, 0, 1, 3)
self.left_layout.addWidget(self.left_button_1, 2, 0, 1, 3)
self.left_layout.addWidget(self.left_button_2, 3, 0, 1, 3)
self.left_layout.addWidget(self.left_label_2, 5, 0, 1, 3) #
self.left_layout.addWidget(self.left_button_4, 6, 0, 1, 3)
self.left_layout.addWidget(self.left_button_5, 7, 0, 1, 3)
#搜索模块
self.right_bar_widget1 = QtWidgets.QWidget() # 右侧顶部搜索框部件
self.right_bar_layout1 = QtWidgets.QGridLayout() # 右侧顶部搜索框网格布局
self.right_bar_widget1.setLayout(self.right_bar_layout1)
self.search_icon1 = QtWidgets.QPushButton(chr(0xf002) + ' ')
self.search_icon1.setFont(qtawesome.font('fa', 16))
self.right_bar_widget_search_input1 = QtWidgets.QLineEdit()
self.right_bar_widget_search_input1.setPlaceholderText("输入’宿主机名‘")
self.right_bar_layout1.addWidget(self.search_icon1, 0, 0, 1, 1)
self.right_bar_layout1.addWidget(self.right_bar_widget_search_input1, 0, 1, 1, 5)
self.right_layout1.addWidget(self.right_bar_widget1, 0, 0, 1, 6)
#宿主机信息
self.right_host_label = QtWidgets.QLabel("宿主机信息")
self.right_host_label.setObjectName('right_lable')
self.right_host_widget = QtWidgets.QTextEdit() # 宿主机信息部件
self.right_host_layout = QtWidgets.QGridLayout() # 宿主机信息网格布局
self.right_host_widget.setLayout(self.right_host_layout)
self.right_layout1.addWidget(self.right_host_label, 1, 0, 1, 6)
self.right_layout1.addWidget(self.right_host_widget, 2, 0, 2, 6)
# 宿主机配置信息
self.right_host_set_label = QtWidgets.QLabel("宿主机配置信息")
self.right_host_set_label.setObjectName('right_lable')
libvirt界面和kvm共同使用
最新推荐文章于 2024-04-12 11:52:47 发布
本文介绍如何结合libvirt库和KVM技术,通过Python接口创建和管理虚拟机,提供一种高效便捷的虚拟化解决方案。
摘要由CSDN通过智能技术生成