📄 sample4_5.c
字号:
#include <cvirte.h> /* Needed if linking in external compiler; harmless otherwise */#include <userint.h>#include <ansi_c.h>void GenerateGUI(void);int CVICALLBACK GenerateData (int panelHandle, int controlID, int event, void *callbackData, int eventData1, int eventData2);int CVICALLBACK Shutdown (int panelHandle, int controlID, int event, void *callbackData, int eventData1, int eventData2); void CVICALLBACK MGenerateData ( int menuBarHandle, int menuItemID, void *callbackData, int panelHandle );void CVICALLBACK MExit ( int menuBarHandle, int menuItemID, void *callbackData, int panelHandle );int CVICALLBACK PanelCallback (int panelHandle, int event, void *callbackData, int eventData1, int eventData2);int handle,Generate, randomNum, ExitButton,MenuBar,Menu,SubMenu,MenuItem; int main (int argc, char *argv[]){ if (InitCVIRTE (0, argv, 0) == 0) /* Needed if linking in external compiler; harmless otherwise */ return -1; /* out of memory */ GenerateGUI(); DisplayPanel (handle); RunUserInterface(); return 0;}//generate user interfacevoid GenerateGUI(){ handle = NewPanel (0, "sample4_5", 50, 50, 150, 200); SetPanelAttribute (handle, ATTR_CAN_MAXIMIZE, 0); SetPanelAttribute (handle, ATTR_SIZABLE, 0); InstallPanelCallback (handle,PanelCallback, 0); Generate = NewCtrl (handle, CTRL_SQUARE_COMMAND_BUTTON, "Generate Data",70, 70); InstallCtrlCallback (handle, Generate, GenerateData, 0); ExitButton = NewCtrl (handle, CTRL_PICTURE_COMMAND_BUTTON,"", 120, 150); InstallCtrlCallback (handle, ExitButton, Shutdown, 0); SetCtrlAttribute (handle, ExitButton, ATTR_HEIGHT, 25); SetCtrlAttribute (handle, ExitButton, ATTR_WIDTH, 40); SetCtrlAttribute (handle,ExitButton, ATTR_FIT_MODE, VAL_SIZE_TO_PICTURE); SetCtrlAttribute (handle, ExitButton, ATTR_IMAGE_FILE, "exit.pcx"); SetPanelAttribute (handle, ATTR_CLOSE_CTRL, ExitButton); randomNum = NewCtrl (handle, CTRL_NUMERIC, "Random Number", 40, 70); SetCtrlAttribute (handle, randomNum, ATTR_CTRL_MODE, VAL_INDICATOR); MenuBar=NewMenuBar (handle); Menu = NewMenu (MenuBar, "__Tool", -1); MenuItem=NewMenuItem (MenuBar, Menu, "__Next", -1, 0, 0, 0); SubMenu=NewSubMenu(MenuBar, MenuItem); NewMenuItem (MenuBar, SubMenu, "__Generate Data", -1, 0, MGenerateData, 0); NewMenuItem (MenuBar,SubMenu,"__Exit",0,VAL_MENUKEY_MODIFIER|'X',MExit,0); }//Menu Generate Data callback fun void CVICALLBACK MGenerateData ( int menuBarHandle, int menuItemID, void *callbackData, int panelHandle ){ double random_val; random_val = rand()/32767.0 * 100.0; SetCtrlVal (panelHandle , randomNum, random_val);}//Menu exit callback funvoid CVICALLBACK MExit( int menuBarHandle, int menuItemID, void *callbackData, int panelHandle ){ QuitUserInterface(0); }//button callbackint CVICALLBACK GenerateData (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ double random_val; if (event == EVENT_COMMIT) { random_val = rand()/32767.0 * 100.0; SetCtrlVal (panel, randomNum, random_val); } return(0);}//exit button callbackint CVICALLBACK Shutdown (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ if (event == EVENT_COMMIT) QuitUserInterface(0); return(0);}//panel callbackint CVICALLBACK PanelCallback (int panel, int event, void *callbackData, int eventData1, int eventData2){ if(event==EVENT_RIGHT_CLICK) MessagePopup("Message","You right click the panel!"); return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -