The problem goes like this I'm trying to get a table which looks like
a semaphore so for the dark colors I chose white text in Qt 4.7 using
C++ It works correctly just as It shows in Designer but when I execute
it with pyside the text color disables the background color. If chose
black as background and white as foreground the result is a white cell
with white text. The problem shows up in windows and linux.

Please help me file a bug if it's necessary

I'm attaching my code here, generated by pyside-uic

# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'test.ui'
#
# Created: Sun Oct 16 21:58:39 2011
#      by: pyside-uic 0.2.13 running on PySide 1.0.7
#
# WARNING! All changes made in this file will be lost!

from PySide import QtCore, QtGui

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(236, 97)
        MainWindow.setWindowTitle("MainWindow")
        self.widget = QtGui.QWidget(MainWindow)
        self.widget.setObjectName("widget")
        self.horizontalLayout = QtGui.QHBoxLayout(self.widget)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.tableWidget = QtGui.QTableWidget(self.widget)
        self.tableWidget.setObjectName("tableWidget")
        self.tableWidget.setColumnCount(2)
        self.tableWidget.setRowCount(2)
        item = QtGui.QTableWidgetItem()
        self.tableWidget.setVerticalHeaderItem(0, item)
        self.tableWidget.verticalHeaderItem(0).setText("1")
        item = QtGui.QTableWidgetItem()
        self.tableWidget.setVerticalHeaderItem(1, item)
        self.tableWidget.verticalHeaderItem(1).setText("2")
        item = QtGui.QTableWidgetItem()
        self.tableWidget.setHorizontalHeaderItem(0, item)
        self.tableWidget.horizontalHeaderItem(0).setText("1")
        item = QtGui.QTableWidgetItem()
        self.tableWidget.setHorizontalHeaderItem(1, item)
        self.tableWidget.horizontalHeaderItem(1).setText("2")
        brush = QtGui.QBrush(QtGui.QColor(255, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        item = QtGui.QTableWidgetItem()
        item.setBackground(brush)
        self.tableWidget.setItem(0, 0, item)
        self.tableWidget.item(0, 0).setText("Black FG Red BG")
        brush = QtGui.QBrush(QtGui.QColor(255, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
        brush.setStyle(QtCore.Qt.NoBrush)
        item = QtGui.QTableWidgetItem()
        item.setBackground(brush)
        item.setForeground(brush)
        self.tableWidget.setItem(0, 1, item)
        self.tableWidget.item(0, 1).setText("White FG Red BG")
        brush = QtGui.QBrush(QtGui.QColor(255, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        brush = QtGui.QBrush(QtGui.QColor(255, 255, 0))
        brush.setStyle(QtCore.Qt.NoBrush)
        item = QtGui.QTableWidgetItem()
        item.setBackground(brush)
        item.setForeground(brush)
        self.tableWidget.setItem(1, 0, item)
        self.tableWidget.item(1, 0).setText("Yellow FG Red BG")
        brush = QtGui.QBrush(QtGui.QColor(255, 0, 0))
        brush.setStyle(QtCore.Qt.SolidPattern)
        brush = QtGui.QBrush(QtGui.QColor(255, 255, 0))
        brush.setStyle(QtCore.Qt.NoBrush)
        item = QtGui.QTableWidgetItem()
        item.setBackground(brush)
        item.setForeground(brush)
        self.tableWidget.setItem(1, 1, item)
        self.tableWidget.item(1, 1).setText("Yellow FG Red BG")
        self.horizontalLayout.addWidget(self.tableWidget)
        MainWindow.setCentralWidget(self.widget)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        __sortingEnabled = self.tableWidget.isSortingEnabled()
        self.tableWidget.setSortingEnabled(False)
        self.tableWidget.setSortingEnabled(__sortingEnabled)


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_())

Attachment: test.ui
Description: application/designer

_______________________________________________
PySide mailing list
[email protected]
http://lists.pyside.org/listinfo/pyside

Reply via email to