@Justin
Using info from given link, i m able to rotate header but size of header is
still not proper.
Any idea how to fix that??
see attach file for code.
Thank you
--
You received this message because you are subscribed to the Google Groups
"Python Programming for Autodesk Maya" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/python_inside_maya/f68cc74e-1b97-432e-89ab-55fef0536182%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
# -*- coding: utf-8 -*-
from PyQt4 import QtCore, QtGui
try:
_fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
def _fromUtf8(s):
return s
try:
_encoding = QtGui.QApplication.UnicodeUTF8
def _translate(context, text, disambig):
return QtGui.QApplication.translate(context, text, disambig, _encoding)
except AttributeError:
def _translate(context, text, disambig):
return QtGui.QApplication.translate(context, text, disambig)
class customHorizontalHeader(QtGui.QHeaderView):
def __init__(self,orientation=QtCore.Qt.Horizontal, parent=None):
super(customHorizontalHeader, self).__init__(orientation, parent)
self.setResizeMode(0)
def paintSection(self, painter, rect, logicalIndex):
self.matrix = QtGui.QMatrix()
#self.matrix.translate(rect.x(),rect.y())
self.matrix.rotate(-90)
painter.setWorldMatrix(self.matrix)
rect.moveCenter(QtCore.QPoint(-rect.center().y(), rect.center().x()))
painter.drawText(rect, QtCore.Qt.AlignCenter, self.model().headerData(logicalIndex, QtCore.Qt.Horizontal).toString())
class Ui_MainWindow(object):
def __init__(self, *args, **kwargs):
super(Ui_MainWindow, self).__init__(*args, **kwargs)
self.model = QtGui.QStandardItemModel()
self.model.setHorizontalHeaderLabels(['Name', 'Age', 'Sex', 'Add', 'HelloWorld'])
self.model.setVerticalHeaderLabels(['V1','V2','V3','V4','V5'])
def setupUi(self, MainWindow):
MainWindow.setObjectName(_fromUtf8("MainWindow"))
MainWindow.resize(611, 547)
self.centralwidget = QtGui.QWidget(MainWindow)
self.centralwidget.setObjectName(_fromUtf8("centralwidget"))
self.verticalLayout = QtGui.QVBoxLayout(self.centralwidget)
self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
self.junkTableView = QtGui.QTableView(self.centralwidget)
self.junkTableView.setObjectName(_fromUtf8("junkTableView"))
self.junkTableView.setModel(self.model)
self.myHeader = customHorizontalHeader()
self.myHeader.setResizeMode(3)
self.junkTableView.setHorizontalHeader(self.myHeader)
self.verticalLayout.addWidget(self.junkTableView)
MainWindow.setCentralWidget(self.centralwidget)
self.retranslateUi(MainWindow)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow", None))
if __name__ == "__main__":
import sys
app = QtGui.QApplication(sys.argv)
MainWindow = QtGui.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
sys.exit(app.exec_())