QStringListModel
可以映射到QComboBox
。并且MySQL表可以通过QSqlTableModel
进行映射。
我想将QComboBox
映射到MySQL表的一列,这样数据库中的更改将反映在QComboBox
itens中。
我想到的是观察数据库中的更改,并每次重新加载QComboBox
itens。这是最好的方法吗?
您可以创建一个QSqlTableModel
或QSqlQueryModel
,并将其设置为具有QComboBox::setModel()
的组合框。您可以使用QComboBox::setModelColumn()
选择表列(或查询列)的显示内容。
但是,当表发生更改时(例如使用查询),则由您来更新模型,因为当表内容发生更改时,QSqlTableModel
无法自动更新自己。