Pregunta

Quiero utilizar QCombobox como el Combobox de Swing en Java. Por eso es necesario utilizar Model para la celebración de mi objeto. ¿Cómo puedo mantener mi objeto en QCombobox. (Creo que debería contener datos en el modelo porque QCombobox fue diseñado según el patrón MVC ...) Se apreciará Cualquier ayuda.

¿Fue útil?

Solución

En función de lo que desea mostrar con su QComboBox, tendrá que escribir su propio modelo, heredando QAbstractListModel, reimplementar rowCount() data()and.

A continuación, el uso QComboBox::setModel() para que la pantalla se QComboBox.

Si lo que desea es cadenas de presentación, se puede utilizar un QStringListModel , provisto de Qt.

Otros consejos

Se puede añadir un modelo para su QCombobox mediante el uso de la función setModel . Se puede utilizar un modelo predefinido o crear su propio heredando de QAbstractItemModel .

Su modelo contendrá el objeto en pantalla separada de datos.

Qt usa una versión simplificada de MVC, que sólo tiene las partes Modelo / Vista.

Se puede utilizar una de las subclases de QAbstractItemModel si no 't necesita cualquier comportamiento especializado, cuál utilizar depende de si usted mantiene sus datos en un sistema de archivos o una estructura de datos en la memoria.

Se debe leer toda la sección sobre de programación de modelo / vista en la documentación de Qt.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top