test4.c
来自「安装DDD之前」· C语言 代码 · 共 63 行
C
63 行
#include <stdio.h>#include <Xm/Xm.h>#include <Xm/DrawingA.h>#include <Xm/PushB.h>#include <Xm/PushBG.h>#include <Xm/RowColumn.h>void print(Widget w, XtPointer client, XtPointer call){ fprintf(stderr, "Yeah\n");}void incb(Widget w, XtPointer client, XtPointer call){ Widget menu = (Widget)client; XmDrawingAreaCallbackStruct *cbs = (XmDrawingAreaCallbackStruct *) call; if (cbs->event->type != ButtonPress) return; if (cbs->event->xbutton.button != 3) return; fprintf(stderr, "Popping up the menu ...\n"); XmMenuPosition(menu, (XButtonPressedEvent *)cbs->event); XtManageChild(menu);}intmain(int argc, char **argv){ XtAppContext theApp; Widget toplevel, drawingArea, button, m; toplevel = XtVaAppInitialize(&theApp, "drawingArea", NULL, 0, &argc, argv, NULL, NULL); drawingArea= XtVaCreateManagedWidget("drawingArea", xmDrawingAreaWidgetClass, toplevel, NULL); m = XmCreatePopupMenu(drawingArea, "popup", NULL, 0); button = XtVaCreateManagedWidget("button", xmPushButtonWidgetClass, m, NULL); XtAddCallback(drawingArea, XmNinputCallback, incb, (XtPointer)m); XtAddCallback(button, XmNactivateCallback, print, NULL); XtRealizeWidget(toplevel); {static XtWidgetGeometry Expected[] = { CWWidth | CWHeight , 506, 322, 1, 1, 0,0,0, /* drawingArea */};/* toplevel should be replaced with to correct applicationShell */PrintDetails(toplevel, Expected);} LessTifTestMainLoop(toplevel); exit(0);}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?