您的位置:首页 > 其它

GTK+图形化应用程序开发学习笔记(十二)—对话框构件、标尺构件(2)

2009-04-21 22:51 495 查看
二、标尺构件
标尺构件(GtkRuler)一般用于在给定窗口中指示鼠标指针的位置。一个窗口可以有一个横跨整个窗口宽度的水平标尺和一个占据整个窗口高度的垂直标尺。标尺上有一个小三角形的指示器标出鼠标指针相对于标尺的精确位置。
有两种标尺构件:G t k H R u l e r(水平)和G t k V R u l e r(垂直)。用gtk_hruler_new创建水平标尺构件,用gtk_vruler­_new创建垂直标尺构件。

2.

名称::

gtk_hruler_new
gtk_vruler_new
功能:
创建标尺构件
头文件:
#include <gtk/gtk.h>
函数原形:
GtkWidget *gtk_hruler_new(void); /*水平标尺*/
GtkWidget *gtk_vruler_new(void); /*垂直标尺*/
参数:

返回值:
新的标尺构件
3.

名称::

gtk_ruler_set_metric
功能:
设置标尺构件的度量单位
头文件:
#include <gtk/gtk.h>
函数原形:
void gtk_ruler_set_metric(GtkRuler *ruler, GtkMetricType metric);
参数:
ruler 标尺构件
metric 度量单位
返回值:

一旦创建了标尺,我们就能指定它的度量单位。标尺的度量单位可以是GTK_PIXELS, GTK_INCHES, GTK_CENTIMETERS. 标尺的度量单位用gtk_ruler_set_metric设置。默认的度量单位是GTK_PIXELS.

4.

名称::

gtk_ruler_set_range
功能:
设置标尺构件的位置和跨度
头文件:
#include <gtk/gtk.h>
函数原形:
void gtk_ruler_set_range(GtkRuler *ruler, gfloat lower, gfloat upper, gfloat position, gfloat max_size);
参数:
ruler 标尺构件
lower 表示的开始
upper 标尺的结束
position 标尺的指针指示器的初始位置
max_size 显示最大可能数值
返回值:

创建完标尺还要对标尺的跨度和指示器初始位置进行设置,我们可以用gtk_ruler_set_range函数进行设置。

下面是创建标尺构件的程序例子:

#include <gtk/gtk.h>

int main(int argc, char *argv[ ])
{
GtkWidget *window;
GtkWidget *box;
GtkWidget *hrule;

gtk_init(&argc,&argv);
window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_signal_connect(GTK_OBJECT(window),”delete_event”,GTK_SIGNAL_FUNC(gtk_main_quit), NULL);
gtk_container_set_border_width(GTK_CONTAINER(window),10);
gtk_widget_set_usize(window,400,100);

box=gtk_vbox_new(FALSE,0);
hrule=gtk_hruler_new();/*创建标尺*/
gtk_ruler_set_metric(GTK_RULER(hrule),GTK_PIXELS);/*设置标尺单位*/
gtk_ruler_set_range(GTK_RULER(hrule),0,10,0,10);/*设置标尺跨度,指示器初始位置*/
gtk_box_pack_start(GTK_BOX(box), hrule, FALSE,FALSE,0);
gtk_container_add(GTK_CONTAINER(window),box);

gtk_widget_show(box);
gtk_widget_show(hrule);
gtk_widget_show(window);
gtk_main();
}
程序运行后得到如下界面:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐