如何在Julia中使用Cairo和GTK在画布上绘图

时间:2015-06-16 16:12:38

标签: gtk julia cairo

我试图将朱莉娅与GTK和开罗一起画到画布上。我认为以下代码(改编自GTK.jl页面上的示例片段)应该可以工作,但事实并非如此。 (其他GTK小部件可以工作,但不是画布)

如果有人可以建议这段代码有什么问题,或者给出一个完整示例的指针,我将不胜感激。

using Gtk.ShortNames
using Cairo

function drawfn(w)
    ctx = Gtk.getgc(w)
    Cairo.set_coords(ctx, 0, 0, 800, 600, 0, 800, 0, 600)
    h = Gtk.height(w)
    w = Gtk.width(w)

    Gtk.rectangle(ctx, 0, 0, w/2, h/2)
    Gtk.set_source_rgb(ctx, 0, 0, 1)
    Gtk.fill(ctx)
end


function main()

    win = Gtk.@Window("stuff", 800,600)
    c = Gtk.@Canvas()
    Gtk.push!(win,c)

    Gtk.draw(drawfn, c)
    Gtk.showall(win)

end

main()

1 个答案:

答案 0 :(得分:1)

我认为这是Gtk.jl版本0.8.1中的一个错误。我向github发布了一个问题,之后vtjnash立即修复了它并标记了版本0.8.2。