FileChooserWidget GTK 中的功能和事件#
Features and Events in FileChooserWidget GTK#
我在 Windows 上的 Xamarin Studio 社区版本 6.3 上使用 GTK#(新手)。
最近,我试图构建一个 Total Commander 应用程序。在构建过程中,我使用了File Chooser Widget
,发现了一些无法解决的问题:
1- 当我点击“位置”框中的文件夹时,会出现几个按钮:\
<icon button with a pen and a paper>
enter image description here。当我点击 Icon Button
时,a Location Entry
会出现。但是,我不知道如何使用 entry 就像打开 folder、folder path 一样显示在 Location entry
上或输入 文件夹路径 , 文件夹 将在小部件上打开。我的临时解决方案是创建一个条目:
FileChooserWidget fcw1 = new global::Gtk.FileChooserWidget(((global::Gtk.FileChooserAction)(0)));
Entry e1 = new Entry();
e1.Text = fcw1.CurrentFolder;
我希望找到捕获那个 Location Entry
并使用它的方法。
2- 在工作场所,我在使用双击事件打开文件时遇到问题。我的代码:
[GLib.ConnectBefore]
protected void OnFcw1ButtonPressEvent(object o, ButtonPressEventArgs args)
{
if (((Gdk.EventButton)args.Event).Type == Gdk.EventType.TwoButtonPress)
{
entry1.Text = fcw1.Filename;
if (File.Exists(fcw1.Filename))
Process.Start(fcw1.Filename);
}
}
3- find同样的问题 使用Search
和Recently Used
表示Could not start the search process
该程序无法创建与索引器守护程序的连接。请确保它是 运行.
请帮助我找到解决方案并教我如何找到所有这些小部件的名称。非常感谢!
要回答 #1,FileChooser 小部件上有一个操作 属性,您可以根据需要对其进行设置(打开、创建、Select 文件夹等)。位置字段包含文件名(您 select 如果浏览,或者如果创建新文件则可以输入)。
在 #2 上,双击 FCW 的默认行为是钻取文件夹和 select 文件。因为您有一个 Glib.ConnectBefore 属性,所以您的事件处理程序将在默认处理程序之前 运行。也许您在 #2 中遇到的任何问题都与处理程序有关?
#3 听起来像是您的开发机器上的问题。 FCW 将允许您搜索文件系统,只要它可以连接到守护程序,所以它看起来不是 运行ning。我在 Windows、Mac OSX、Ubuntu 或其他机器上的 RHEL 中没有遇到过问题。
我在 Windows 上的 Xamarin Studio 社区版本 6.3 上使用 GTK#(新手)。
最近,我试图构建一个 Total Commander 应用程序。在构建过程中,我使用了File Chooser Widget
,发现了一些无法解决的问题:
1- 当我点击“位置”框中的文件夹时,会出现几个按钮:\
<icon button with a pen and a paper>
enter image description here。当我点击 Icon Button
时,a Location Entry
会出现。但是,我不知道如何使用 entry 就像打开 folder、folder path 一样显示在 Location entry
上或输入 文件夹路径 , 文件夹 将在小部件上打开。我的临时解决方案是创建一个条目:
FileChooserWidget fcw1 = new global::Gtk.FileChooserWidget(((global::Gtk.FileChooserAction)(0)));
Entry e1 = new Entry();
e1.Text = fcw1.CurrentFolder;
我希望找到捕获那个 Location Entry
并使用它的方法。
2- 在工作场所,我在使用双击事件打开文件时遇到问题。我的代码:
[GLib.ConnectBefore]
protected void OnFcw1ButtonPressEvent(object o, ButtonPressEventArgs args)
{
if (((Gdk.EventButton)args.Event).Type == Gdk.EventType.TwoButtonPress)
{
entry1.Text = fcw1.Filename;
if (File.Exists(fcw1.Filename))
Process.Start(fcw1.Filename);
}
}
3- find同样的问题 使用Search
和Recently Used
表示Could not start the search process
该程序无法创建与索引器守护程序的连接。请确保它是 运行.
请帮助我找到解决方案并教我如何找到所有这些小部件的名称。非常感谢!
要回答 #1,FileChooser 小部件上有一个操作 属性,您可以根据需要对其进行设置(打开、创建、Select 文件夹等)。位置字段包含文件名(您 select 如果浏览,或者如果创建新文件则可以输入)。
在 #2 上,双击 FCW 的默认行为是钻取文件夹和 select 文件。因为您有一个 Glib.ConnectBefore 属性,所以您的事件处理程序将在默认处理程序之前 运行。也许您在 #2 中遇到的任何问题都与处理程序有关?
#3 听起来像是您的开发机器上的问题。 FCW 将允许您搜索文件系统,只要它可以连接到守护程序,所以它看起来不是 运行ning。我在 Windows、Mac OSX、Ubuntu 或其他机器上的 RHEL 中没有遇到过问题。