Я пытаюсь использовать Julia с GTK и Cairo, чтобы нарисовать на холсте. Я думаю, что следующий код (адаптированный из фрагментов примера на странице GTK.jl) должен работать, но это не так. (Другие виджеты GTK работают, но не холст)Как нарисовать на холсте с помощью Cairo и GTK в Julia
Я был бы признателен, если кто-то может предложить, что не так с этим кодом, или дать указатель на полный пример.
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 = [email protected]("stuff", 800,600)
c = [email protected]()
Gtk.push!(win,c)
Gtk.draw(drawfn, c)
Gtk.showall(win)
end
main()
Какая ошибка вы получаете? Каким образом это не работает? –
Окно появляется с твердым серым фоном. Никакие команды рисования (например, прямоугольник) не работают. Сообщение об ошибке отсутствует. Это говорит о возможности того, что мне нужно как-то разрешить видимость холста, но я пробовал различные методы делать это без везения. –