zoukankan      html  css  js  c++  java
  • pyqt

    # coding=utf-8
    from PyQt4.QtGui import *
    from PyQt4.QtCore import *
    
    import locale
    import sys
    class MyDialog(QDialog):
        def __init__(self, parent=None):
            super(MyDialog, self).__init__(parent)
            self.MyTable = MyTabView(4, 3)
            print type(self.MyTable)
            self.MyTable.setHorizontalHeaderLabels(['姓名', '身高', '体重'])
            s = "松鼠"
    
            print s
            newItem = QTableWidgetItem(s)
            self.MyTable.setItem(0, 0, newItem)
    
            newItem = QTableWidgetItem("10cm")
            self.MyTable.setItem(0, 1, newItem)
    
            newItem = QTableWidgetItem("60g")
            self.MyTable.setItem(0, 2, newItem)
    
            layout = QHBoxLayout()
            layout.addWidget(self.MyTable)
            self.setLayout(layout)
            self.MyTable.setSelectionBehavior(QAbstractItemView.SelectRows)
            self.MyTable.setEditTriggers(QAbstractItemView.NoEditTriggers)
    
            # self.MyTable.setEditTriggers(QAbstractItemView.DoubleClicked)
            # self.MyTable.SelectedClicked(self.a())
        def mouseDoubleClickEvent(self, event):
            QTableView.mouseDoubleClickEvent(self, event)
            pos = event.pos()
            item = self.indexAt(pos)
            print 'jianpan'
            if item:
                print "item clicked at ", item.row(), " ", item.column()
    
    class MyTabView(QTableView):
        def __init__(self, row,column,parent=None):
            super(MyTabView, self).__init__(parent)
            self.model = QStandardItemModel(row, column)
            self.setModel(self.model)
    
        def mouseDoubleClickEvent(self, event):
            QTableView.mouseDoubleClickEvent(self, event)
            pos = event.pos()
            item = self.indexAt(pos)
            if item:
                print "item clicked at ", item.row(), " ", item.column()
    
    
    
    
    if __name__ == '__main__':
        reload(sys)
        sys.setdefaultencoding('utf8')
        mycode = locale.getpreferredencoding()
        mycode = 'utf-8'
        code = QTextCodec.codecForName(mycode)
        QTextCodec.setCodecForLocale(code)
        QTextCodec.setCodecForTr(code)
        QTextCodec.setCodecForCStrings(code)
        app = QApplication(sys.argv)
        myWindow = MyDialog()
        myWindow.show()
        sys.exit(app.exec_())
    
    
  • 相关阅读:
    安装VS 2015完成后,VS2012 打开报错
    ASP.NET MVC 项目中 一般处理程序ashx 获取Session
    windows平台 查看 dll 程序集 PublicKeyToken
    MySQL 表与字段编码格式报错
    Linux系统下安装MongoDB 指南
    ASP.NET 访问路径 错误提示 HTTP 错误 404.8 原来路径中包含bin目录被拒绝
    ASP.NET 大文件上传
    将类型(int,string,…)转换为 T 类型
    直接插入排序
    MySQL 优化之索引合并(index_merge)
  • 原文地址:https://www.cnblogs.com/jian-pan/p/6614104.html
Copyright © 2011-2022 走看看