【问题标题】:Why does vala complain about a missing property when there is such prop当有这样的道具时,为什么vala会抱怨丢失的财产
【发布时间】:2012-06-13 08:57:55
【问题描述】:

我正在使用 gtk 3 和 vala 开发一个 GUI 应用程序。 这是我来自 MainWindow::MainWindow() 的源代码

    var menu = new MenuModel();
    var app = this.application;
    app.menubar = menu;

valac 给出了这个错误:

ewns_viewer.vala:54.9-54.19: error: The name `menubar' does not exist in the context of `Gtk.Application'
        app.menubar = menu;
        ^^^^^^^^^^^

this,不然的话。 我也试过了

var obj_class = (ObjectClass) typeof (Gtk.Application).class_ref ();
var properties = obj_class.list_properties ();
foreach (var prop in properties) 
{
    stdout.printf ("%s\n", prop.name);
}

这给出了这个输出:

application-id
flags
is-registered
is-remote
inactivity-timeout
action-group
register-session
app-menu
menubar

如果我做对了,Gtk.Application 拥有所有这些属性,那么为什么 valac 会给我这个错误?

我正在使用 valac 0.14.2.Ubuntu 12.04。

【问题讨论】:

    标签: gtk vala gobject


    【解决方案1】:

    /usr/share/vala-0.14/vapi/gtk+-3.0.vapi 中的绑定对于 Ubuntu 上的 Vala 0.14 已过期。如果您安装 Vala 0.16,此绑定将可用。

    【讨论】:

      【解决方案2】:

      该属性是在 vala 0.15.1 中添加的。您正在使用六个月大的 vala 版本。最新版本是一周前发布的 0.17.1。

      【讨论】:

        猜你喜欢
        • 2014-06-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-02-25
        • 2014-08-12
        相关资源
        最近更新 更多