360的标题按钮界面

#!/usr/bin/python  
#-*-coding:utf-8-*-
			
from tool_button import ToolButton
from push_button import PushButton

from PyQt4.QtGui import *
from PyQt4.QtCore import *
from PyQt4.Qt import *

class TitleWidget(QWidget):
	def __init__(self, parent = None):
		super(TitleWidget,self).__init__(parent)
	
		self.version_title =  QLabel(self);
		self.skin_button =  PushButton(self);
		self.main_menu_button =  PushButton(self);
		self.min_button =  PushButton(self);
		self.max_button =  PushButton(self);
		self.close_button =  PushButton(self);
		self.medal_button =  QPushButton(self);
		self.button_list = []

		self.version_title.setStyleSheet("color:white;");
	
		#设置图片
		self.skin_button.loadPixmap("./img/sysButton/skin_button.png");
		self.main_menu_button.loadPixmap("./img/sysButton/main_menu.png");
		self.min_button.loadPixmap("./img/sysButton/min_button.png");
		self.max_button.loadPixmap("./img/sysButton/max_button.png");
		self.close_button.loadPixmap("./img/sysButton/close_button.png");
	
		medal_icon = QIcon ("./img/contentWidget/medal.png");
		self.medal_button.setIcon(medal_icon);
		self.medal_button.setFixedSize(25, 25);
		self.medal_button.setIconSize(QSize(25, 25));
		self.medal_button.setStyleSheet("background:transparent;")
	
		self.connect(self.skin_button, SIGNAL("clicked()"), self, SIGNAL("showSkin()"))
		self.connect(self.main_menu_button, SIGNAL("clicked()"), self, SIGNAL("showMainMenu()"))
		self.connect(self.min_button, SIGNAL("clicked()"), self, SIGNAL("showMin()"))
		self.connect(self.max_button, SIGNAL("clicked()"), self, SIGNAL("showMax()"))
		self.connect(self.close_button, SIGNAL("clicked()"), SIGNAL("close()")) #closeWidget self, 
	
		title_layout =  QHBoxLayout()
		title_layout.addWidget(self.version_title,0,Qt.AlignVCenter)
		title_layout.addStretch();
		title_layout.addWidget(self.medal_button, 0, Qt.AlignTop)
		title_layout.addWidget(self.skin_button, 0, Qt.AlignTop)
		title_layout.addWidget(self.main_menu_button, 0, Qt.AlignTop)
		title_layout.addWidget(self.min_button, 0, Qt.AlignTop)
		title_layout.addWidget(self.max_button, 0, Qt.AlignTop)
		title_layout.addWidget(self.close_button, 0, Qt.AlignTop)
		title_layout.setSpacing(0)
		title_layout.setContentsMargins(0, 0, 5, 0)
		self.version_title.setContentsMargins(15, 0, 0, 0)
		self.skin_button.setContentsMargins(0, 0, 10, 0)
	
		#string_list = QStringList ;
		string_list = ["./img/toolWidget/tiJian.png","./img/toolWidget/muMa.png","./img/toolWidget/louDong.png",\
			       "./img/toolWidget/xiTong.png","./img/toolWidget/qingLi.png","./img/toolWidget/jiaSu.png",\
			       "./img/toolWidget/menZhen.png","./img/toolWidget/ruanJian.png"]
	
		button_layout =  QHBoxLayout()
	
		signal_mapper =  QSignalMapper(self);
		for i in range(len(string_list)):
		
			self.tool_button =  ToolButton(string_list[i])
			#self.tool_button.setParent()
			self.button_list.append(self.tool_button);
			self.connect(self.tool_button, SIGNAL("clicked()"), signal_mapper, SLOT("map()"));
			signal_mapper.setMapping(self.tool_button, QString.number(i, 10));
	
			button_layout.addWidget(self.tool_button, 0, Qt.AlignBottom);
		
		self.connect(signal_mapper, SIGNAL("mapped(QString)"), self, SLOT("turnPage(QString)"));
		
		logo_label =  QLabel();
		pixmap = QPixmap ("./img/logo.png");
		logo_label.setPixmap(pixmap);
		logo_label.setFixedSize(pixmap.size());
		logo_label.setCursor(Qt.PointingHandCursor);
	
		button_layout.addStretch();
		button_layout.addWidget(logo_label);
		button_layout.setSpacing(8);
		button_layout.setContentsMargins(15, 0, 0, 0);
	
		main_layout =  QVBoxLayout();
		main_layout.addLayout(title_layout);
		main_layout.addLayout(button_layout);
		main_layout.setSpacing(0);
		main_layout.setContentsMargins(0, 0, 0, 0);
	
		self.translateLanguage();

		self.setLayout(main_layout);
		self.setFixedHeight(100);
		self.is_move = False;


	def translateLanguage(self):
	
		self.version_title.setText(u"360 safe gurd 9.2")
		self.skin_button.setToolTip(u"change skin");
		self.main_menu_button.setToolTip(u"main menu");
		self.min_button.setToolTip(u"minimize");
		self.max_button.setToolTip(u"maximize");
		self.close_button.setToolTip(u"close");
	
		self.button_list[0].setText(u"power");
		self.button_list[1].setText(u"mummy");
		self.button_list[2].setText(u"hole");
		self.button_list[3].setText(u"repair");
		self.button_list[4].setText(u"clear");
		self.button_list[5].setText(u"optimize");
		self.button_list[6].setText(u"expert");
		self.button_list[7].setText(u"software");


	def mousePressEvent(self,e):
	
		press_point = e.pos();
		self.is_move = True;

	#有问题
	def mouseMoveEvent(self, e):
		if((e.buttons() == Qt.LeftButton) & self.is_move):		
			parent_widget = QWidget(self)#parentWidget();
			parent_point = QPoint()
			parent_point = parent_widget.pos(); #
			parent_point.setX(parent_point.x() + e.x() - press_point.x());
			parent_point.setY(parent_point.y() + e.y() - press_point.y());
			parent_widget.move(parent_point);
	
	def mouseReleaseEvent(self,event):
		if(self.is_move):

			self.is_move = False;
	


	def mouseDoubleClickEvent(self,e):
	
		self.emit.showMax();

	
	def turnPage(self, current_page):
	
		current_index,ok = current_page.toInt(10)
	
		for i in range(len(self.button_list)):
			self.tool_button = self.button_list[i];
			if(current_index == i):
				self.tool_button.setMousePress(True);			
			else:
				self.tool_button.setMousePress(False);
		
	

		
if __name__ == '__main__':
	import sys
	
	app = QApplication(sys.argv)
	
	title = TitleWidget()
	title.show()
	
	app.exec_()
		

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值