朱莉娅+;GTK:关闭车窗的信号

朱莉娅+;GTK:关闭车窗的信号,gtk,julia,Gtk,Julia,我是新使用Julia+Gtk的,我正在尝试创建一个带有关闭窗口按钮的简单窗口。下面的代码创建了窗口和按钮,看起来一切正常,但当我按下按钮时,窗口不会关闭,程序停止响应,迫使我杀死Julia REPL。REPL中未显示任何错误消息 using Gtk win = GtkWindow("Main", 100,50) button = GtkButton("Exit") push!(win,button) showall(win) signal_connect(button, :clicked)

我是新使用Julia+Gtk的,我正在尝试创建一个带有关闭窗口按钮的简单窗口。下面的代码创建了窗口和按钮,看起来一切正常,但当我按下按钮时,窗口不会关闭,程序停止响应,迫使我杀死Julia REPL。REPL中未显示任何错误消息

using Gtk

win = GtkWindow("Main", 100,50)
button = GtkButton("Exit")
push!(win,button)

showall(win)

signal_connect(button, :clicked) do widget
    println("Exit")
    Gtk.gtk_quit()
end
更新:

问题似乎出在/src/events.js中的函数gtk_quit()中:

function gtk_quit()
    ccall((:gtk_main_quit, libgtk), Void, ())
end  
如果我在代码中用ccall((:Gtk_main_quit,libgtk),Void,())替换Gtk.Gtk_quit(),我会在REPL中得到“ERROR:UndefVarError:libgtk not defined”


如果有人能告诉我这里有什么问题,我将不胜感激。

您不仅仅是在寻找符合的
destory
功能吗

如果将上述代码中的
Gtk.Gtk_quit()
替换为
destroy(win)
,则单击按钮时,窗口将关闭:

using Gtk

win = GtkWindow("Main", 100,50)
button = GtkButton("Exit")
push!(win,button)

showall(win)

signal_connect(button, :clicked) do widget
    Gtk.destroy(win)
    println("Exit")
end

您不仅仅是在寻找符合以下条件的
destory
函数吗

如果将上述代码中的
Gtk.Gtk_quit()
替换为
destroy(win)
,则单击按钮时,窗口将关闭:

using Gtk

win = GtkWindow("Main", 100,50)
button = GtkButton("Exit")
push!(win,button)

showall(win)

signal_connect(button, :clicked) do widget
    Gtk.destroy(win)
    println("Exit")
end