LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1402|回复: 5

求gdk_draw_rectangle相关用法

[复制链接]
发表于 2003-6-14 17:50:08 | 显示全部楼层 |阅读模式
共有七个参数。
画矩形函数:我现在不明白第一个和第二个参数是什么,怎么创建。怎么用。最好在程序开始时的变量定义也写出来,谢谢了。我实在看不明白API了。
对了,这是gdk中的,

  1. void gdk_draw_rectangle(GdkDrawable *drawable,
  2.                 GdkGC *gc,
  3.                 gboolean filled,    //是否填充前景色
  4.                 gint x,    //左上角X点
  5.                 gint y,    //左上角Y点
  6.                 gint width,              //宽
  7.                 gint height);              //高
复制代码
 楼主| 发表于 2003-6-16 16:08:01 | 显示全部楼层
顶一下
 楼主| 发表于 2003-6-18 16:58:40 | 显示全部楼层
用我的代码来换吧,请兄弟们多多交流一下啊,会的说一下。谢谢了

  1. #include <gtk/gtk.h>
  2. int main(int argc, char* argv[]) {
  3.         static        GtkWidget *window=NULL;
  4.         gint s_width, s_height;

  5.         gtk_init(&argc, &argv);
  6.         window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
  7.         g_signal_connect(G_OBJECT(window),"delete_event",
  8.                 G_CALLBACK(gtk_main_quit),NULL);
  9.         gtk_window_set_title(GTK_WINDOW(window),"客户端");
  10.         s_width = gdk_screen_width();   [color=red]返回桌面的宽[/color]
  11.         s_height=gdk_screen_height();  [color=red]高[/color]
  12.         gtk_window_set_default_size(GTK_WINDOW(window),s_width,s_height);
  13.         gtk_window_set_position(GTK_WINDOW(window),GTK_WIN_POS_CENTER);

  14.         gdk_draw_rectangle(window,
  15.         gtk_widget_show(window);
  16.         gtk_main();
  17.         return FALSE;
  18. }
复制代码
发表于 2003-6-18 19:37:00 | 显示全部楼层
http://developer.gnome.org/doc/A ... ing-primitives.html

这里有这个函数的说明
第一个应该是一个窗口句柄
第二个是DC(就是显示区0)

我是根据windows下开发来理解的
不知对不对

可以在google上查找到更多英文资料
发表于 2003-6-18 23:03:26 | 显示全部楼层
先声明阿,我也没有用过GDK的。

第一个参数应该是一个可以绘画的对象,可以是窗口,或者pixmap(类似Windows 的 bitmap)什么的。
第二个参数应该是一个“图形上下文”,这个词比较晦涩,我不知道好的中文名字是什么。基本上,在这个对象里面保存着绘制图形时的一些设定,比如字体,线的风格,颜色等等。有了这个东西就不必每次绘画东西的时候都要指定这一大堆属性了。

根 XWindow 里面个概念差不多的。
 楼主| 发表于 2003-6-19 16:33:27 | 显示全部楼层
谢谢版主的帮助。
我找到了一些讲gdk的东西,由于是pdf的,只说一点。与这两个参数有关的。
可绘区 包括:窗口,pixmap and bitmap.
可以用

  1. #include <gdk/gdk.h>
  2. GdkPixmap*
  3. gdk_pixmap_new(GdkWindow* window,
  4. gint width,
  5. gint height,
  6. gint depth)
  7. void gdk_pixmap_unref(GdkPixmap* pixmap)
复制代码

来定义和撤消,pixmap。
也不知道对不对。我看这些可能有些过时,不像现在的gdk。
但是读gdk api 又看不明白。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表