
其次,如果你的主界面显示有几种决策要取决于你的需求:
你的显示是含老列表,还是表格,这里决定着你的布局是如何布局的。
另一个则是使用外部的布局还是将整个显示作为一个整体。
先获取某文件中的文件信息,可以通过QDir,获取对应的entryList,设置好对应的图片ext的过滤器即可。
这么说,如果你是使用外部布局,你每一个图片由QPixmap/QImage导入,再用一个QLabel来显示,列表还是表格则可以用QBoxLayout或是GridLayout。 在Win32中,由于每一个Widget都有窗体句柄, 你可以通过对应的win32API 获取对应的子窗体。
而使用整体布局,列表或是表格则可以用QListView/QTableView,重写对应的model即可,难度比较大,但是扩展性比较好,由于每个QListView/QTableView都is-a QWidget,因孝唤此都具有唯一的窗体句柄(当然不考虑view port widget),同时内部是存在类似layout的布局管理,当内部某个model改变的时候,该窗体一般会局部刷新等等。
简而言之,如果你需要很快入手,建议使用第一种。
由QDir =>QPixmap/QImage =>QLabel =>QBoxLayout/QGridLayout
有问题HI~
如果需要帮忙,价钱好谈= =~ 缺钱巧老凯呐~
呃,最后句话当我没说…
1、一个简单的图片显示程序(以下仅是部分程序段,相信大家会看明白)QPixmap pixmap( "image.jpg" ) //image.jpg在程序的当前目录下。
PixmapLabel1->setPixmap(pixmap) //PixmapLabel1标签即可显示图片。
2、将QImage转换为QPixmap
QString fileName = QFileDialog::getOpenFileName(this,
tr("Open File"), QDir::currentPath())
if (!fileName.isEmpty())
{
QImage image(fileName) //定义QImage类。
if (image.isNull()) {
QMessageBox::information(this, tr("Image Viewer"),
tr("Cannot load %1.").arg(fileName))
return
}
ui.label->setPixmap(QPixmap::fromImage(image)) 将QImage转换为QPixmap。
}
3、QImage的加载图片的方法(个人现只懂两种)
(1)、QImage image(fileName) //直接在QImage类的构造函数搞定,fileName是指应用程序的当前目录,相信大家能理解这饥陵里所说的当前目录。
(2)烂局戚、腊颤QImage image
image.load(fileName) //使用了load方法。
参考答案 有时候我们放不开不是因为失去,而是心疼自己的付出。 遗忘敏弯的好处是:也许肆拿腊会后悔,也许会难过,但是心却不会再疼。 曾经看不惯,受不了的,如今不过淡然一笑裂滑。成熟,不是看破,而是看淡。欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)