by tangke <> 2009-06-08
以前一直没有用过Qt的python库,但是有时候发现在龙芯上面编译一个Qt应用程序的时间很长,所有有时候不得不写一些Qt的python程序来跑。
首先我们需要安装这些环境
apt-get install python python-qt4 libqt4-dev
然后我们新建一个脚本文件,代码如下:
import sys
from PyQt4.QtCore import Qt
from PyQt4.QtGui import *
class Overlay(QWidget):
def __init__(self, parent = None):
QWidget.__init__(self, parent)
palette = QPalette(self.palette())
palette.setColor(palette.Background, Qt.transparent)
self.setPalette(palette)
self.setAttribute(Qt.WA_TransparentForMouseEvents)
def paintEvent(self, event):
painter = QPainter()
painter.begin(self)
painter.setRenderHint(QPainter.Antialiasing)
painter.setPen(QPen(QColor(255, 0, 0)))
painter.drawLine(self.width()/8, self.height()/8, 7*self.width()/8, 7*self.height()/8)
painter.drawLine(self.width()/8, 7*self.height()/8, 7*self.width()/8, self.height()/8)
painter.end()
class MainWindow(QMainWindow):
def __init__(self, parent = None):
QMainWindow.__init__(self, parent)
widget = QWidget(self)
self.editor = QTextEdit()
layout = QGridLayout(widget)
layout.addWidget(self.editor, 0, 0, 1, 2)
layout.addWidget(QPushButton("Refresh"), 1, 0)
layout.addWidget(QPushButton("Cancel"), 1, 1)
self.setCentralWidget(widget)
self.overlay = Overlay(self.centralWidget())
def resizeEvent(self, event):
self.overlay.resize(event.size())
event.accept()
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
阅读(281) | 评论(0) | 转发(0) |