togglebutton.c

来自「《Linux程序设计权威指南》源代码」· C语言 代码 · 共 65 行

C
65
字号
	/* File: togglebutton.c */	#include <Xm/Xm.h>	#include <Xm/ToggleB.h>	void callback(Widget w, XtPointer client_data,		XmAnyCallbackStruct *cbs)	{		Boolean status;		status = XmToggleButtonGetState(w);		/*		XtVaGetValues(w,			XmNset, 	&status,			NULL);		*/		if(status) printf("Toggle is on\n");		else printf("Toggle is off\n"); 	}	int main(int argc, char *argv[])	{		int n;		Arg args[10];		XtAppContext app;		Widget toplevel, button;		XmString label;		void callback();		//建立顶级窗口		toplevel = XtVaAppInitialize(&app, "Demo", NULL, 0,			&argc, argv, NULL, NULL);		//建立按钮上标签的字符串		label = XmStringCreateSimple("ToggleButton Test");		n = 0;		XtSetArg(args[n], XmNlabelString, label);	n++;		button = XmCreateToggleButton(toplevel, "Demo", args, n);		XtManageChild(button);		XmStringFree(label);		//把按钮缺省设为开的状态		XmToggleButtonSetState(button, True, False);		/*		XtVaSetValues(button,			XmNset,		True,			NULL);		*/		//设置回调函数		XtAddCallback(button,			XmNvalueChangedCallback,callback,			NULL);		//显示窗口		XtRealizeWidget(toplevel);		//进入事件循环		XtAppMainLoop(app);	}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?