首页
学习
活动
专区
圈层
工具
发布

Qt官方示例解析-Address Book-基于单个数据模型在不同视图呈现不同数据

AddDialog类用于从用户获取地址簿的信息。这个QDialog子类由NewAddressTab实例化以添加联系人,并由AddressWidget实例化以添加和编辑联系人。...首先,我们使用QTabWidget::currentWidget()获取活动选项卡的QTableView对象。然后我们从tableView中提取selectionModel来获取被选中的索引。...void AddressWidget::editEntry() { QTableView* pTempView = static_castQTableView*>(currentWidget(...如果文件无法打开,则会显示一个QMessageBox,并显示相关的错误消息。...Action实现了 打开的功能就是用来打开保存功能存储的文件,保存就是把地址簿中的联系人数据存储为文件,数据是二进制流数据。

5.8K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    C++ Qt开发:TableView与TreeView组件联动

    通常用于与视图组件(如 QTableView、QTreeView 等)一起使用。它提供了一个表格结构,可以包含行和列,每个单元格可以存储一个 QStandardItem 对象。...与视图的集成: 通常与 QTableView、QTreeView 等视图组件结合使用,以实现对视图中项的选择操作。该组件是实现模型-视图架构中选择的关键组件。...如下图所示;DialogSize.ui接着来看on_pushButton_clicked按钮是如何实现的,该按钮主要用于实现改变表格行与列,当点击后则会弹出一个DialogSize自定义对话框,至于对话框是如何添加的在之前的文章中已经详细介绍过了...最后的setRowColumn()则是用于接收主窗体的船只,并设置到对应的子对话框上的SpinBox组件内,其代码如下;DialogSize::DialogSize(QWidget *parent) :QDialog...用于对话框初始化显示 ptr->setHeaderList(strList); } // 调用弹窗 int ref = ptr->exec(); if(ref==QDialog

    1K10

    qdialog 返回值_QDialog 窗口级别模态(续)「建议收藏」

    答案就是QDialog::open()。QDialog::open()可以打开一个窗口级别模态对话框。在 Mac OS X 上就是一个 sheet。为了正确实现事件循环,当函数调用之后会立即返回。...每个函数的返回值都是用户从对话框中选择的颜色;如果用户没有选择,则会返回一个非法颜色值。这些函数的问题在于,它们提供的是应用程序级别的模态,因此不能使用 sheet。...你可以从 Qt 文档中获得更详细的信息。在open()中指定响应的 slot 可以很好的简化代码。...他需要打开对话框,点击选择颜色,关闭对话框,然后才能看到效果如何。如果他们不满意选择的颜色,则不得不重新进行上面的工作。...我们以颜色选择为例,看看如何实现这种方式。 class MainWindow { Q_OBJECT //... private: // ...

    2.2K31
    领券