2014-07-17 1 views
0

푸시 버튼을 클릭하여 qcomboBox에 추가 된 항목을 드롭 다운 메뉴에 모두 표시하는 대신 '10, 23, 56, 14, 57, ... '과 같이 어떻게 표시 되나요? 하나씩 선택 만할까요?콤보 상자의 항목을 하나씩 선택하는 대신 하나의 선택 항목에 표시하는 방법은 무엇입니까?

def setup(self, Dialog): 
     ... 
    self.comboBox = QtGui.QComboBox(Dialog) 
    self.comboBox.setGeometry(QtCore.QRect(20, 100, 431, 22)) 
    self.comboBox.setObjectName(_fromUtf8("comboBox")) 

    self.tableWidget = QtGui.QTableWidget(Dialog) 
    self.tableWidget.setGeometry(QtCore.QRect(20, 470, 651, 71)) 
    self.tableWidget.setSelectionMode(QtGui.QAbstractItemView.ExtendedSelection) 
    self.tableWidget.setTextElideMode(QtCore.Qt.ElideRight) 
    self.tableWidget.setVerticalScrollMode(QtGui.QAbstractItemView.ScrollPerItem) 
    self.tableWidget.setRowCount(1) 
    self.tableWidget.setColumnCount(129) 
    self.tableWidget.setObjectName(_fromUtf8("tableWidget")) 
    item = QtGui.QTableWidgetItem() 
    for i in range(0, self.tableWidget.columnCount()): 
     self.tableWidget.setItem(0, i, item) 

    self.pushButton_7 = QtGui.QPushButton(Dialog) 
    self.pushButton_7.setGeometry(QtCore.QRect(220, 650, 75, 23)) 
    self.pushButton_7.setObjectName(_fromUtf8("pushButton_7")) 
    self.pushButton_7.clicked.connect(self.additem) 

def additem(self): 
    for i in range(0, self.tableWidget.columnCount()): 
     item = self.tableWidget.item(0,i) 
     if item != None: 
      text = item.text() 
      self.comboBox.addItem(text) 
+0

테이블 위젯에서 한 행의 셀에서 모든 텍스트는 하나 개의 항목 (한 행)에 추가 될 수 있습니다 그래서 당신이 원하는 콤보 박스? – Aleksandar

+0

예, 쉼표로 구분됩니다. 모든 입력 데이터는 하나의 항목으로 표시되어야합니다. 가능한가? – Viv91

답변

0

당신의 additem 방법은 다음과 같아야합니다 : 여기 내 코드입니다

def additem(self): 
    text = "" 
    for i in range(0, self.tableWidget.columnCount()): 
     item = self.tableWidget.item(0,i) 
     if item != None: 
      text += item.text() + ", " 

    self.comboBox.addItem(text[:-2]) 
+1

정말 고마워요! 당신은 훌륭합니다! – Viv91

관련 문제