如何创建应用程序的简单vala Gtk代码以打开文件夹的图像并一次显示一个?
我必须创建一个Vala应用程序来打开图像文件夹并一次显示一个图像。
我有一个Gtk.Stack只显示Gtk.FileChooserDialog收到的一张图片,但我不能用Gtk.Filechooser.Dialog接收更多元素并显示它们。
由于
答案 0 :(得分:0)
有两种解决方案:
您想从同一个文件夹中选择多个文件:然后只需执行chooser.select_multiple = true;
,即可通过chooser.get_uris()
您只需选择文件夹:然后使用正确的操作(Gtk.FileChooserAction.SELECT_FOLDER
)创建FileChooserDialog:
var chooser = new Gtk.FileChooserDialog (
"Pick the folder to load the images", this,
Gtk.FileChooserAction.SELECT_FOLDER,
"_Cancel",
Gtk.ResponseType.CANCEL,
"_Open",
Gtk.ResponseType.ACCEPT);
当你得到合适的文件夹时:
if (chooser.run () == Gtk.ResponseType.ACCEPT) {
var folder = File.new_from_uri (chooser.get_uri ());
if (folder.query_exists() && folder.query_file_type (0) == FileType.DIRECTORY) {
// It's a directory and exists, so enumerate the children and do you stuff
}
}
chooser.close ();