Search Results

Search found 11 results on 1 pages for 'qlistwidget'.

Page 1/1 | 1 

  • QListWidget drag and drop items disappearing from list

    - by ppalasek
    Hello, I'm having trouble implementing a QListWidget with custom items that can be reordered by dragging and dropping. The problem is when I make a fast double click (a very short drag&drop) on an item, the item sometimes disappears from the QListWidget. This is the constructor for my Widget: ListPopisiDragDrop::ListPopisiDragDrop(QWidget *parent) : QListWidget(parent) { setSelectionMode(QAbstractItemView::SingleSelection); setDragEnabled(true); viewport()->setAcceptDrops(true); setDefaultDropAction(Qt::MoveAction); setDropIndicatorShown(true); setDragDropMode(QAbstractItemView::InternalMove); } also the drop event: void ListPopisiDragDrop::dropEvent(QDropEvent *event){ int startRow=currentIndex().row(); QListWidget::dropEvent(event); int endRow=currentIndex().row(); //more code... } Custom items are made by implementing paint() and sizeHint() functions from QAbstractItemDelegate. When the problem with disappearing items happens, the dropEvent isn't even called. I really don't know what is happening and if I'm doing something wrong. Any help is appreciated. Thanks! Edit: I'm running the application on a Symbian S60 5th edition phone. Edit2: If I add this line to the constructor: setDragDropOverwriteMode(true); the item in the list still disappears, but an empty row stays in it's place.

    Read the article

  • Using images in QListWidget, is this possible?

    - by Neko
    Hi, again. :) As with the last few times I posted here, I have a question about QT, which I am using to create a chat messenger client. To display the list of online users, I'm using a QListWidget, as created like this: listWidget = new QListWidget(horizontalLayoutWidget); listWidget->setObjectName("userList"); QSizePolicy sizePolicy1(QSizePolicy::Preferred, QSizePolicy::Expanding); sizePolicy1.setHorizontalStretch(0); sizePolicy1.setVerticalStretch(0); sizePolicy1.setHeightForWidth(listWidget->sizePolicy().hasHeightForWidth()); listWidget->setSizePolicy(sizePolicy1); listWidget->setMinimumSize(QSize(30, 0)); listWidget->setMaximumSize(QSize(150, 16777215)); listWidget->setBaseSize(QSize(100, 0)); listWidget->setContextMenuPolicy(Qt::CustomContextMenu); Users are shown by constantly refreshing the list, like this: (Note: There are different channels, with different userlists, so refreshing it is the most efficient thing to do, as far as I know.) void FMessenger::refreshUserlist() { if (currentPanel == 0) return; listWidget = this->findChild<QListWidget *>(QString("userList")); listWidget->clear(); QList<FCharacter*> charList = currentPanel->charList(); QListWidgetItem* charitem = 0; FCharacter* character; foreach(character, charList) { charitem = new QListWidgetItem(character->name()); // charitem->setIcon(QIcon(":/Images/status.png")); listWidget->addItem(charitem); } } This has always worked perfectly. The line that I commented out is the one I have problems with: my current goal is to be able to display a user's online status with an image, which represents whether they are busy, away, available, etc. Using setIcon() does absolutely nothing though, apparently; the items still show up as they used to, without icons. I'm aware that this is probably not the way this function needs to be used, but I have found little documentation about it online, and absolutely no useful examples of implementations. My question is, can anybody help me with fixing this problem? Any help would be appreciated terrifically, like always!

    Read the article

  • c++ - QListWidget

    - by user1889459
    I created a working QListWidget with multiple items, but I can't figure out how to make it user-friendly. It looks like this: 1000 1001 1002 ... But I want it to look like this, where firt 4 numbers have a meaning, while all the rest info is just for user. 1000 Name LastName and some other helpful info 1001 tom jeff smallville 1002 ming vase, 1992 ... For example, this line fotoId = ui->devices->currentItem()->text().toInt(); should give me same result in both cases.

    Read the article

  • QListView/QListWidget with custom items

    - by Daniel
    I'm writing my first Qt application with PyQt and am having some trouble creating a custom list view. I'd like the list to contain arbitrary widgets (one custom widget in particular). How would I go about this? It seems that the alternative would be to create a table or grid view wrapped in a scrollbar. However, I'd like to be able to take advantage of the model/view approach as well as the nesting (tree-view) support the built-ins handle. EDIT: To clarify, this widget is interactive (contains buttons), so the solution requires more than painting a widget.

    Read the article

  • How can i iterate through QListWidget items and work with each item?

    - by Hossein
    In CSharp its as simple as writting : listBox1.Items.Add("Hello"); listBox1.Items.Add("There"); foreach (string item in listBox1.Items ) { MessageBox.Show(item.ToString()); } and i can easily add different objects to a list box and then retrieve them using foreach. I tried the same approach in Qt 4.8.2 but it seems they are different.though they look very similar at first.I found that Qt supports foreach so i went on and tried something like : foreach(QListWidgetItem& item,ui->listWidget->items()) { item.setTextColor(QColor::blue()); } which failed clearly.It says the items() needs a parameter which confuses me.I am trying to iterate through the ListBox itself, so what does this mean? I tried passing the ListBox object as the parameter itself this again failed too: foreach(QListWidgetItem& item,ui->listWidget->items(ui->listWidget)) { item.setTextColor(QColor::blue()); } So here are my questions: How can I iterate through a QListWidget items in Qt? Can i store objects as items in QListWidgets like C#? How can i convert an object in QListWidgets to string(C#s ToString counter part in Qt) ? (suppose i want to use a QMessagBox instead of that setTextColor and want to print out all string items in the QlistWidget.)

    Read the article

  • adding a header to pyqt list

    - by Moayyad Yaghi
    hello i want to add a headers and index to a list in pyqt , it's really not important what list of QT (qlistwidget , qlistview , qtablewidget, qtreeview) in short .. i want something like the spin box delegate example in the pyqt demo ... but instead of the index in the column headers i want a strings ... hope the idea is clear enough thanx in advance

    Read the article

  • How to decode "application/x-qabstractitemmodeldatalist" in Qt for drag and drop?

    - by gct
    I've created a child class of QTreeWidget that I want to be able to drag items from another tree widget too (I want to handle the insertion myself though), as well as from a QListWidget. I've overridden the dropEvent method in my class, and it looks like the mimetype of the data I'm getting from my QTreeWidget is application/x-qabstractitemmodeldatalist, how can I decode this to get the items from the tree back out?

    Read the article

  • PySide / PyQt QStyledItemDelegate list in table

    - by danodonovan
    Dear All, I'm trying to create a table of lists in Python with Qt (PySide/PyQt - matters not) and my lists are squashed into the table cells. Is there a way to get the list delegates to 'pop out' of their cells? I've attached a simple code snippet - replace 'PySide' with 'PyQt4' depending on your preference from PySide import QtCore, QtGui class ListDelegate(QtGui.QStyledItemDelegate): def createEditor(self, parent, option, index): editor = QtGui.QListWidget(parent) for i in range( 12 ): editor.addItem('list item %d' % i) return editor if __name__ == '__main__': import sys app = QtGui.QApplication(sys.argv) model = QtGui.QStandardItemModel(2, 2) tableView = QtGui.QTableView() delegate = ListDelegate() tableView.setItemDelegate(delegate) tableView.setModel(model) for row in range(2): for column in range(2): item = QtGui.QStandardItem( 'None' ) model.setItem(row, column, item) tableView.setWindowTitle('example') tableView.show() sys.exit(app.exec_()) If you hadn't guessed I'm pretty new to this Qt lark Thanks in advance, Dan

    Read the article

  • Setting checkstate on a ListWidgetItem

    - by viraptor
    Hi, I'm trying to create a list of checkbox items that change the status on activation. I can connect the activate signal and everything seems to work, but changes on the screen. Am I missing some steps here? Here's the list creation: self.listField = QtGui.QListWidget(self) muted_categories = qb.settingsCollection['mutedCategories'].split('|') main_categories = sorted(set(qb.categoryTopNames.values())) for category in main_categories: item = QtGui.QListWidgetItem(category, self.listField) item.setFlags(QtCore.Qt.ItemIsUserCheckable | QtCore.Qt.ItemIsEnabled) if category in muted_categories: item.setCheckState(QtCore.Qt.Checked) else: item.setCheckState(QtCore.Qt.Unchecked) self.listField.connect(self.listField, QtCore.SIGNAL('itemActivated(QListWidgetItem*)'), self.doItemChangeState) and here's the handler: def doItemChangeState(self, item): """ invert the state of the activated item """ if item.checkState() == QtCore.Qt.Checked: item.setCheckState(QtCore.Qt.Unchecked) else: item.setCheckState(QtCore.Qt.Checked) I verified that the handler is fired after clicking - if I put prints there, it will alternate "checked" / "unchecked". What can I do to refresh the checkboxes themselves?

    Read the article

  • how to display "complex" widgets in a list in pyqt?

    - by Giorgio Gelardi
    I'm quite new to QT and I have to display a list of "panels" like this: My datamodel handles different classes' instances, so having more than one panel layout would be great - but it's not a requirement. Btw I have to catch mouse clicks on the images to execute related actions. I'm thinking about use some html capable widget (QWebPage?) to render the items in a QListView or QListWidget, but as I said, I don't know QTs so much and need a direction (delegates? stylesheets?). Any help will be appreciated.

    Read the article

  • PyQt Drag and Drop - Nothing happens

    - by Umang
    Hi, I'm trying to get drop a file onto a Window (I've tried the same thing with a QListWidget without success there too) test.py: #! /usr/bin/python # Test from PyQt4 import QtCore, QtGui import sys from qt_test import Ui_MainWindow class MyForm(QtGui.QMainWindow, Ui_MainWindow): def __init__(self, parent=None): QtGui.QWidget.__init__(self, parent) self.setupUi(self) self.__class__.dragEnterEvent = self.DragEnterEvent self.__class__.dragMoveEvent = self.DragEnterEvent self.__class__.dropEvent = self.drop self.setAcceptDrops(True) print "Initialized" self.show() def DragEnterEvent(self, event): event.accept() def drop(self, event): link=event.mimeData().text() print link def main(): app = QtGui.QApplication(sys.argv) mw = MyForm() sys.exit(app.exec_()) if __name__== "__main__": main() And here's qt_test.py # -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'untitled.ui' # # Created: Thu May 20 12:23:19 2010 # by: PyQt4 UI code generator 4.6 # # WARNING! All changes made in this file will be lost! from PyQt4 import QtCore, QtGui class Ui_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(800, 600) MainWindow.setAcceptDrops(True) self.centralwidget = QtGui.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") MainWindow.setCentralWidget(self.centralwidget) self.retranslateUi(MainWindow) QtCore.QMetaObject.connectSlotsByName(MainWindow) def retranslateUi(self, MainWindow): MainWindow.setWindowTitle(QtGui.QApplication.translate("MainWindow", "MainWindow", None, QtGui.QApplication.UnicodeUTF8)) I've read this email and I've followed everything said there. I still don't get any output except "Initialized" and the drag doesn't seem to get accepted (both for files from a file manager and plain text dragged from a text editor). Do you know what I'm doing wrong? Thanks!

    Read the article

1