⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 listing_12_7.c

📁 This source code has been tested under OpenWindows 2.0, Sun s X11/NeWS server. For Xlib programs th
💻 C
字号:
/*************************************************************************                                                                    ****  listing_12_7.c                                                    ****                                                                    ****  Demonstration of pop-up menus.                                    ****                                                                    *************************************************************************/#include <Xm/BulletinB.h>#include <Xm/RowColumn.h>#include <Xm/Label.h>#include <Xm/PushB.h>#include <Xm/Separator.h>void	InitPopup();			/* FORWARD Definitions	      */void	PopPopup();Widget	appshell,			/* Application Shell	      */	the_bb,				/* The work area    */        popup,				/* The pop-up menu pane	      */        pop_lbl,			/* The pop-up's title  	      */        pop_sep,			/* Seps title from choices    */        pop_btn[6];                  	/* Choices on the pop-up      */void main( argc, argv )    int     argc;    char    *argv[];{    appshell = XtInitialize( argv[0], "Listing_12_7", NULL, 0, &argc, argv );    the_bb = XmCreateBulletinBoard( appshell, "TheBB", NULL, 0 );    XtManageChild( the_bb );    XtAddEventHandler( the_bb, ButtonPressMask, FALSE, PopPopup, NULL );    InitPopup();    XtRealizeWidget( appshell );    XtMainLoop();}/*************************************************************************                                                                    ****  InitPopup()                                                       ****                                                                    ****  Creates the pop-up menu pane and its children.                    ****                                                                    *************************************************************************/void	InitPopup(){    popup = XmCreatePopupMenu( the_bb, "Popup", NULL, 0 );    pop_lbl = XmCreateLabel( popup, "Pop_Title", NULL, 0 );    XtManageChild( pop_lbl );    pop_sep = XmCreateSeparator( popup, "Pop_Sep", NULL, 0 );    XtManageChild( pop_sep );    pop_btn[0] = XmCreatePushButton( popup, "Pop_Black", NULL, 0 );    pop_btn[1] = XmCreatePushButton( popup, "Pop_Gray",  NULL, 0 );    pop_btn[2] = XmCreatePushButton( popup, "Pop_White", NULL, 0 );    pop_btn[3] = XmCreatePushButton( popup, "Pop_Red",   NULL, 0 );    pop_btn[4] = XmCreatePushButton( popup, "Pop_Green", NULL, 0 );    pop_btn[5] = XmCreatePushButton( popup, "Pop_Blue",  NULL, 0 );    XtManageChildren( pop_btn, 6 );}/*************************************************************************                                                                    ****  PopPopup( w, client_data, event )                                 ****                                                                    ****  Button event handler. Manages popup on button #3.                 ****                                                                    *************************************************************************/void	PopPopup( w, client_data, event )    Widget	    w;    caddr_t	    client_data;    XButtonEvent    *event;{    if (event->button != Button3)	return;    XmMenuPosition( popup, event );    XtManageChild( popup );}

⌨️ 快捷键说明

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