Pixbuf不是在DrawingArea上绘制的

时间:2013-06-21 11:36:03

标签: c# mono gtk gtk#

我对Gtk,Mono和Gtk#都很新。

通过大量的教程,示例和所有内容,我设法获得了无错误的代码:

DrawingArea map = new DrawingArea ();

window.Add (map);
Pixbuf mapContents = new Pixbuf (Environment.CurrentDirectory + string.Format("{0}maps{0}1.png", Path.DirectorySeparatorChar));

int wWidth = mapContents.Width, wHeight = mapContents.Height;
map.SetSizeRequest (wWidth, wHeight);
map.ExposeEvent += delegate(object o, ExposeEventArgs _args)
{
    Widget widget = (Widget) o;

    Gdk.Rectangle area = _args.Event.Area;
    widget.GdkWindow.DrawPixbuf(widget.Style.BlackGC,
                                mapContents,
                                area.X, area.Y,
                                area.Width, area.Height,
                                area.Width, area.Height,
                                RgbDither.Normal,
                                area.X, area.Y);

    _args.RetVal = true;
};

但是,虽然它没有错误,但它也缺乏预期的功能。

我想要做的是将背景图像添加到DrawingArea,但它保持空白。

我做错了什么?

0 个答案:

没有答案