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

📄 test2.c

📁 安装DDD之前
💻 C
字号:
#include <X11/Intrinsic.h>#include <X11/StringDefs.h>#include <Xm/ArrowB.h>#include <X11/Xmu/Editres.h>#include <X11/Shell.h>#include <X11/Core.h>#include <Xm/Xm.h>#include <Xm/RowColumn.h>#include <Xm/MenuShell.h>#include <Xm/CascadeBG.h>#include "MegaB.h"#include <stdio.h>#define APPNAME "MegaTest"#define APPCLASS "MegaTest"#define ICOUNT 200static void dyn_menuCB(arrow, data, cbs)Widget arrow;XtPointer data;XmArrowButtonCallbackStruct *cbs;{  int i;  char buf[100];  Widget menu, megatb;#define NITEMS 40  XmString xmstrings[NITEMS];  Arg args[10];printf("dyn_menuCB\n");    for (i = 0; i < NITEMS; i++)    {      sprintf(buf, "item %d", i);      xmstrings[i]  = XmStringCreateSimple(buf);    }  /* Create popup menu */  menu = XmCreatePopupMenu(arrow, "popup", NULL, 0);  /* Create MegaButton widget */  i = 0;  XtSetArg(args[i], XmNitems, xmstrings); i++;  XtSetArg(args[i], XmNitemCount, NITEMS); i++;  megatb = XtCreateManagedWidget("_megaButton", 				 xmMegaButtonWidgetClass, menu, args, i);  /* Free the XmStrings */  for (i = 0; i < NITEMS; i++)    XmStringFree(xmstrings[i]);        XtAddCallback(menu, XmNunmapCallback,		(XtCallbackProc) XtDestroyWidget, NULL);  /* Display the popup menu */  XmMenuPosition(menu, (XButtonPressedEvent *)cbs->event);  XtManageChild(menu);}intmain(argc, argv)     int argc; char **argv;{  Widget toplevel, arrow;  XtAppContext app;  Display *theDisplay;  XtToolkitInitialize();  app = XtCreateApplicationContext();	  theDisplay = XtOpenDisplay (app, NULL, APPNAME, APPCLASS, 			      NULL, 0, &argc, argv);  if (!theDisplay)    {      printf("%s: can't open display, exiting...", APPNAME);      exit (0);    }  toplevel = XtAppCreateShell (APPNAME, APPCLASS,			       applicationShellWidgetClass, theDisplay, NULL, 0);  arrow = XtVaCreateWidget("down_arrow",			   xmArrowButtonWidgetClass, toplevel,			   XmNarrowDirection, XmARROW_DOWN,			   NULL);  XtManageChild(arrow);  XtAddCallback(arrow, XmNactivateCallback,		(XtCallbackProc) dyn_menuCB, NULL);  /* XtAddEventHandler(toplevel, 0, True, _XEditResCheckMessages, NULL); */  XtRealizeWidget(toplevel);  {    static XtWidgetGeometry Expected[] = {   CWWidth | CWHeight            ,   50,   50,   23,   23, 0,0,0, /* down_arrow */     };    PrintDetails(toplevel,Expected);};  LessTifTestMainLoop(toplevel);  exit(0);}

⌨️ 快捷键说明

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