怎么在QFileDialog上添加一个控件

GreenArrowMan 2015-11-20 09:52:20
怎么在QFileDialog上添加一个控件?
...全文
406 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
GreenArrowMan 2015-11-23
  • 打赏
  • 举报
回复
引用 2 楼 u011012932 的回复:
QFileDialog* f = new QFileDialog(); f->setOption(QFileDialog::DontUseNativeDialog, true); QGridLayout *layout = static_cast<QGridLayout*>(f->layout()); QList< QPair<QLayoutItem*, QList<int> > > moved_items; f->show(); for(int i = 0; i < layout->count(); i++) { int row, column, rowSpan, columnSpan; layout->getItemPosition(i, &row, &column, &rowSpan, &columnSpan); if (row >= 2) { QList<int> list; list << (row + 1) << column << rowSpan << columnSpan; moved_items << qMakePair(layout->takeAt(i), list); i--; // takeAt has shifted the rest items } } for(int i = 0; i < moved_items.count(); i++) { layout->addItem(moved_items[i].first, moved_items[i].second[0], moved_items[i].second[1], moved_items[i].second[2], moved_items[i].second[3]); } QTableWidget* tableWidget = new QTableWidget(); layout->addWidget(tableWidget, 2, 0, 1, 4);
这个方法可行。 我刚看到。我已经用另一种方法实现了。 自己做一个dialog,QFiledialog作为一个子控件,嵌入进去。自己的控件加在QFiledialog的外围。
冷静忍耐 2015-11-20
  • 打赏
  • 举报
回复
可以试着继承QFileDialog,看能不能加。
一去丶二三里 2015-11-20
  • 打赏
  • 举报
回复
QFileDialog* f = new QFileDialog(); f->setOption(QFileDialog::DontUseNativeDialog, true); QGridLayout *layout = static_cast<QGridLayout*>(f->layout()); QList< QPair<QLayoutItem*, QList<int> > > moved_items; f->show(); for(int i = 0; i < layout->count(); i++) { int row, column, rowSpan, columnSpan; layout->getItemPosition(i, &row, &column, &rowSpan, &columnSpan); if (row >= 2) { QList<int> list; list << (row + 1) << column << rowSpan << columnSpan; moved_items << qMakePair(layout->takeAt(i), list); i--; // takeAt has shifted the rest items } } for(int i = 0; i < moved_items.count(); i++) { layout->addItem(moved_items[i].first, moved_items[i].second[0], moved_items[i].second[1], moved_items[i].second[2], moved_items[i].second[3]); } QTableWidget* tableWidget = new QTableWidget(); layout->addWidget(tableWidget, 2, 0, 1, 4);
第7章 Qt基于Widget的控件 137 7.1 QLabel控件 137 设置QLabel字体的大小和颜色 137 使用QLabel显示图片 138 图片自适应QLabel的大小 138 7.2 QPushButton控件 138 QPushButton的基本应用 139 QPushButton设置图片 140 7.3 QLineEdit控件 141 QLineEdit基本应用 141 QLineEdit限制输入数字 141 setPlaceholderText()设置提示文字 142 setReadOnly设置不可编辑 142 setMaxLength()设置可以输入的最多字符数 142 setEchoMode()设置模式 142 7.4 QTextEdit控件 143 简介 143 提示占位文本 143 文本内容设置 144 7.4 QPlainTextEdit控件 145 QPlainTextEdit简介 145 QPlainTextEdit富文本 145 QPlainTextEdit用法 145 7.5 QSpinBox控件 146 QSpinBox简介 146 QSpinBox的主要属性 147 QSpinBox案例分析 147 7.6 QRadioButton控件 148 简介 148 在UI界面中加入QRadioButton控件 148 对QRadioButton控件进行分组 149 多个QRadioButton控件响应同一个槽函数 149 7.7 QCheckBox控件 152 简介 152 QCheckBox开启三态模式 152 在UI界面中加入QCheckBox控件 153 stateChanged()信号 153 猜猜你喜欢 154 7.8 QSlider滑动条控件 155 QSlider简介 155 QSlider案例 156 7.9 QComboBox下拉选择框 157 QComboBox简介 157 QComboBox列表项的访问 157 QComboBox的currentlndexChanged信号 157 QComboBox添加图标 159 用代码添加项 159 添加项 159 7.10 列表框QListWidget类 160 QListWidget简介 160 列表项的显示设置 161 列表框常用操作 162 添加操作 162 删除操作 162 7.11 表格控件QTableWidget 163 简介 163 界面设计器中编辑 163 代码方式修改QTableWidget 164 7.12 树控件QTreeWidget 167 简介 167 操作步骤与分析 167 7.13 Qt的日期、时间、日历等控件 169 QDateEdit控件 169 QDateTimeEdit控件 169 QCalendarWidget控件 170 7.14 QDialog 171 简介 171 操作 171 QMessageBox 172 QFileDialog 173 QFontDialog 174 QColorDialog 175

16,216

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧