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

📄 window.h

📁 在ecos 下mingui 的移植开发
💻 H
📖 第 1 页 / 共 3 页
字号:
    int     iBkColor;    int (*WinProc)(HWND, int, WPARAM, LPARAM);                       // the address of window procedure    DWORD dwAddData;                    // the additional data.}WNDCLASS;typedef WNDCLASS* PWNDCLASS;#define MAINWINCLASSNAME    ("MAINWINDOW")BOOL GUIAPI RegisterWindowClass (PWNDCLASS pWndClass);BOOL GUIAPI UnregisterWindowClass (const char* szClassName);char* GUIAPI GetClassName (HWND hWnd);BOOL GUIAPI GetWindowClassInfo (PWNDCLASS pWndClass);BOOL GUIAPI SetWindowClassInfo (const WNDCLASS* pWndClass);/*************************** Non-Main Window support *************************/HWND GUIAPI CreateWindowEx (const char* spClassName, const char* spCaption,                  DWORD dwStyle, DWORD dwExStyle, int id,                   int x, int y, int w, int h, HWND hParentWnd, DWORD dwAddData);BOOL GUIAPI DestroyWindow (HWND hWnd);#define CreateWindow(class_name, caption, style, id, x, y, w, h, parent, add_data) \        CreateWindowEx(class_name, caption, style, 0, id, x, y, w, h, parent, add_data)/******************************** Timer Support ******************************/// Note: when _TIMER_UNIT_10MS defined, the speed is not frequency but // interval time in unit of 10ms.BOOL GUIAPI SetTimer (HWND hWnd, int id, int speed);BOOL GUIAPI KillTimer (HWND hWnd, int id);BOOL GUIAPI SetTimerSpeed (HWND hWnd, int id, int speed);// Note: Tick count is in unit of 10ms.unsigned int GUIAPI GetTickCount (void);/******************************** IME Support ********************************/#ifdef _IME_GB2312int IMEWinProc (HWND hWnd, int message, WPARAM wParam, LPARAM lParam);void* IMEWindow (void* data);#endifint GUIAPI RegisterIMEWindow (HWND hWnd);int GUIAPI UnregisterIMEWindow (HWND hWnd);int GUIAPI GetIMEStatus (int StatusCode);int GUIAPI SetIMEStatus (int StatusCode, int Value);/**************************** Accelerator Support ****************************/HACCEL GUIAPI CopyAcceleratorTable (HACCEL hacc);int GUIAPI DeleteAccelerators (HACCEL hacc, int key, DWORD keymask);#define ACCEL_SHIFT     1#define ACCEL_ALT       4#define ACCEL_CTRL      16int GUIAPI AddAccelerators (HACCEL hacc,                 int key, DWORD keymask, WPARAM wParam, LPARAM lParam);int GUIAPI DestroyAcceleratorTable (HACCEL hacc);HACCEL GUIAPI CreateAcceleratorTable (HWND hWnd);HACCEL GUIAPI LoadAccelerators (const char* filename, int id);/**************************** Caret support **********************************/BOOL GUIAPI CreateCaret (HWND hWnd, PBITMAP pBitmap, int nWidth, int nHeight);BOOL GUIAPI ChangeCaretSize (HWND hWnd, int newWidth, int newHeight);BOOL GUIAPI ActiveCaret (HWND hWnd);UINT GUIAPI GetCaretBlinkTime (HWND hWnd);BOOL GUIAPI SetCaretBlinkTime (HWND hWnd, UINT uTime);BOOL GUIAPI DestroyCaret (HWND hWnd);BOOL GUIAPI HideCaret (HWND hWnd);BOOL GUIAPI ShowCaret (HWND hWnd);BOOL GUIAPI SetCaretPos (HWND hWnd, int x, int y);BOOL GUIAPI GetCaretPos (HWND hWnd, PPOINT pPt);/**************************** Control support ********************************//* Standard control IDs */#define IDC_STATIC    0#define IDOK          1#define IDCANCEL      2#define IDABORT       3#define IDRETRY       4#define IDIGNORE      5#define IDYES         6#define IDNO          7#define MINID_RESERVED      0xF001#define MAXID_RESERVED      0xFFFF/*********************************** Menu Support ****************************//* Menu flags */#define MF_INSERT           0x00000000L#define MF_CHANGE           0x00000080L#define MF_APPEND           0x00000100L#define MF_DELETE           0x00000200L#define MF_REMOVE           0x00001000L#define MF_BYCOMMAND        0x00000000L#define MF_BYPOSITION       0x00000400L#define MF_SEPARATOR        0x00000800L#define MF_ENABLED          0x00000000L#define MF_GRAYED           0x00000001L#define MF_DISABLED         0x00000002L#define MF_UNCHECKED        0x00000000L#define MF_CHECKED          0x00000008L#define MF_USECHECKBITMAPS  0x00000200L#define MF_STRING           0x00000000L#define MF_BITMAP           0x00000004L#define MF_OWNERDRAW        0x00000100L#define MF_POPUP            0x00000010L#define MF_MENUBARBREAK     0x00000020L#define MF_MENUBREAK        0x00000040L#define MF_UNHILITE         0x00000000L#define MF_HILITE           0x00000080L#define MF_DEFAULT          0x00001000L#define MF_SYSMENU          0x00002000L#define MF_HELP             0x00004000L#define MF_RIGHTJUSTIFY     0x00004000L#define MF_MOUSESELECT      0x00008000L#define MF_END              0x00000080L#define MFT_STRING          MF_STRING#define MFT_BITMAP          MF_BITMAP#define MFT_BMPSTRING       0x00010000L#define MFT_MENUBARBREAK    MF_MENUBARBREAK#define MFT_MENUBREAK       MF_MENUBREAK#define MFT_OWNERDRAW       MF_OWNERDRAW#define MFT_RADIOCHECK      0x00000200L#define MFT_SEPARATOR       MF_SEPARATOR#define MFT_RIGHTORDER      0x00002000L#define MFT_RIGHTJUSTIFY    MF_RIGHTJUSTIFY#define MFS_GRAYED          0x00000003L#define MFS_DISABLED        MFS_GRAYED#define MFS_CHECKED         MF_CHECKED#define MFS_HILITE          MF_HILITE#define MFS_ENABLED         MF_ENABLED#define MFS_UNCHECKED       MF_UNCHECKED#define MFS_UNHILITE        MF_UNHILITE#define MFS_DEFAULT         MF_DEFAULT/* * System Menu Command Values */  #define SC_SIZE         0xF000  #define SC_MOVE         0xF010  #define SC_MINIMIZE     0xF020  #define SC_MAXIMIZE     0xF030  #define SC_NEXTWINDOW   0xF040  #define SC_PREVWINDOW   0xF050  #define SC_CLOSE        0xF060  #define SC_VSCROLL      0xF070  #define SC_HSCROLL      0xF080  #define SC_MOUSEMENU    0xF090  #define SC_KEYMENU      0xF100  #define SC_ARRANGE      0xF110  #define SC_RESTORE      0xF120  #define SC_TASKLIST     0xF130  #define SC_SCREENSAVE   0xF140  #define SC_HOTKEY       0xF150  #define SC_DEFAULT      0xF160  #define SC_MONITORPOWER 0xF170  #define SC_CONTEXTHELP  0xF180  #define SC_SEPARATOR    0xF00F/* MENUITEMINFO flags */  #define MIIM_STATE       0x00000001  #define MIIM_ID          0x00000002  #define MIIM_SUBMENU     0x00000004  #define MIIM_CHECKMARKS  0x00000008  #define MIIM_TYPE        0x00000010  #define MIIM_DATA        0x00000020  #define MIIM_STRING      0x00000040  #define MIIM_BITMAP      0x00000080  #define MIIM_FTYPE       0x00000100/* * Flags for TrackPopupMenu */  #define TPM_LEFTBUTTON  0x0000L  #define TPM_RIGHTBUTTON 0x0002L  #define TPM_LEFTALIGN   0x0000L  #define TPM_CENTERALIGN 0x0004L  #define TPM_RIGHTALIGN  0x0008L  #define TPM_TOPALIGN        0x0000L  #define TPM_VCENTERALIGN    0x0010L  #define TPM_BOTTOMALIGN     0x0020L  #define TPM_HORIZONTAL      0x0000L     /* Horz alignment matters more */  #define TPM_VERTICAL        0x0040L     /* Vert alignment matters more */  #define TPM_NONOTIFY        0x0080L     /* Don't send any notification msgs */  #define TPM_RETURNCMD       0x0100L  #define TPM_DESTROY         0x1000L       // Destroy menu after tracking.  #define TPM_SYSCMD          0x2000L       // Send system command.  #define TPM_DEFAULT         0x0000L       // Default tracking flag./* return codes for WM_MENUCHAR */#define MNC_IGNORE  0#define MNC_CLOSE   1#define MNC_EXECUTE 2#define MNC_SELECT  3typedef struct _MENUITEMINFO {    UINT                mask;    UINT                type;    UINT                state;    int                 id;    HMENU               hsubmenu;    PBITMAP             hbmpChecked;    PBITMAP             hbmpUnchecked;    DWORD               itemdata;     DWORD               typedata;    UINT                cch;}MENUITEMINFO;typedef MENUITEMINFO* PMENUITEMINFO;// Menu creationHMENU GUIAPI LoadMenuFromFile (const char* filename, int id);HMENU GUIAPI CreateMenu (void);HMENU GUIAPI CreatePopupMenu ( PMENUITEMINFO pmii);HMENU GUIAPI CreateSystemMenu (HWND hwnd, DWORD dwStyle);int GUIAPI InsertMenuItem (HMENU hmnu, int item,                             BOOL flag, PMENUITEMINFO pmii);int GUIAPI RemoveMenu (HMENU hmnu, int item, UINT flags);int GUIAPI DeleteMenu (HMENU hmnu, int item, UINT flags);int GUIAPI DestroyMenu (HMENU hmnu);int GUIAPI IsMenu (HMENU hmnu);HMENU GUIAPI SetMenu (HWND hwnd, HMENU hmnu);HMENU GUIAPI GetMenu (HWND hwnd);void GUIAPI DrawMenuBar (HWND hwnd);int GUIAPI TrackMenuBar (HWND hwnd, int pos);int GUIAPI TrackPopupMenu (HMENU hmnu, UINT uFlags, int x, int y, HWND hwnd);HMENU GUIAPI GetMenuBarItemRect (HWND hwnd, int pos, RECT* prc);#define HMF_UPITEM      0x01#define HMF_DOWNITEM    0x02#define HMF_DEFAULT     0x00BOOL GUIAPI HiliteMenuBarItem (HWND hwnd, int pos, UINT flag);int GUIAPI GetMenuItemCount (HMENU hmnu);int GUIAPI GetMenuItemID (HMENU hmnu, int pos); int GUIAPI GetMenuItemInfo (HMENU hmnu, int item,                             BOOL flag, PMENUITEMINFO pmii);int GUIAPI GetMenuItemRect (HWND hwnd, HMENU hmnu, int item, PRECT prc);HMENU GUIAPI GetPopupSubMenu (HMENU hpppmnu);HMENU GUIAPI GetSubMenu (HMENU hmnu, int pos);int GUIAPI GetSystemMenu (HWND hwnd, BOOL flag);UINT GUIAPI EnableMenuItem (HMENU hmnu, int item, UINT flags);int GUIAPI CheckMenuRadioItem (HMENU hmnu, int first, int last,                             int checkitem, UINT flags);int GUIAPI SetMenuItemBitmaps (HMENU hmnu, int item, UINT flags,                             PBITMAP hBmpUnchecked, PBITMAP hBmpChecked);int GUIAPI SetMenuItemInfo (HMENU hmnu, int item,                             BOOL flag, PMENUITEMINFO pmii);/*************************** Dialog support **********************************/// Dialog codes#define DLGC_WANTARROWS     0x0001      /* Control wants arrow keys         */#define DLGC_WANTTAB        0x0002      /* Control wants tab keys           */#define DLGC_WANTALLKEYS    0x0004      /* Control wants all keys           */#define DLGC_WANTCHARS      0x0008      /* Want MSG_CHAR messages           */#define DLGC_HASSETSEL      0x0010      /* Understands EM_SETSEL message    */#define DLGC_DEFPUSHBUTTON  0x0100      /* Default pushbutton               */#define DLGC_PUSHBUTTON     0x0200      /* Non-default pushbutton           */#define DLGC_RADIOBUTTON    0x0400      /* Radio button                     */#define DLGC_3STATE         0x0800      /* 3 States button item             */#define DLGC_STATIC         0x1000      /* Static item: don't include       */#define DLGC_BUTTON         0x2000      /* Button item: can be checked      */typedef struct{    char*       class_name;             // control class    DWORD       dwStyle;                // control style    int         x, y, w, h;             // control position in dialog    int         id;                     // control identifier    const char* caption;                // control caption    DWORD       dwAddData;              // additional data    DWORD       dwExStyle;              // control extended style} CTRLDATA;typedef CTRLDATA* PCTRLDATA;typedef struct{    DWORD       dwStyle;                // dialog box style    DWORD       dwExStyle;              // dialog box extended style    int         x, y, w, h;             // dialog box position    const char* caption;                // dialog box caption    HICON       hIcon;                  // dialog box icon    HMENU       hMenu;                  // dialog box menu    int         controlnr;              // number of controls    PCTRLDATA   controls;               // poiter to control array    DWORD       dwAddData;              // addtional data, must be zero} DLGTEMPLATE;typedef DLGTEMPLATE* PDLGTEMPLATE;HWND GUIAPI CreateMainWindowIndirect (PDLGTEMPLATE pDlgTemplate,                     HWND hOwner, WNDPROC WndProc);BOOL GUIAPI DestroyMainWindowIndirect (HWND hMainWin);int  GUIAPI DialogBoxIndirectParam (PDLGTEMPLATE pDlgTemplate,                     HWND hOwner, WNDPROC DlgProc, LPARAM lParam);BOOL GUIAPI EndDialog (HWND hDlg, int endCode);void GUIAPI DestroyAllControls (HWND hDlg);int  GUIAPI DefaultDialogProc (HWND hWnd,                 int message, WPARAM wParam, LPARAM lParam);HWND GUIAPI GetDlgDefPushButton (HWND hWnd);int  GUIAPI GetDlgCtrlID (HWND hwndCtl);HWND GUIAPI GetDlgItem (HWND hDlg, int nIDDlgItem);UINT GUIAPI GetDlgItemInt (HWND hDlg, int nIDDlgItem, BOOL *lpTranslated,                    BOOL bSigned);int  GUIAPI GetDlgItemText (HWND hDlg, int nIDDlgItem, char* lpString,                     int nMaxCount);char* GUIAPI GetDlgItemText2 (HWND hDlg, int id, int* lenPtr);HWND GUIAPI GetNextDlgGroupItem (HWND hDlg, HWND hCtl, BOOL bPrevious);HWND GUIAPI GetNextDlgTabItem (HWND hDlg, HWND hCtl, BOOL bPrevious);int  GUIAPI SendDlgItemMessage ( HWND hDlg, int nIDDlgItem,             int message, WPARAM wParam, LPARAM lParam);BOOL GUIAPI SetDlgItemInt (HWND hDlg, int nIDDlgItem, UINT uValue,                     BOOL bSigned);BOOL GUIAPI SetDlgItemText (HWND hDlg, int nIDDlgItem, const char* lpString);#ifdef _CTRL_BUTTONvoid GUIAPI CheckDlgButton (HWND hDlg, int nIDDlgItem, int nCheck);void GUIAPI CheckRadioButton (HWND hDlg,                 int idFirstButton, int idLastButton, int idCheckButton);int  GUIAPI IsDlgButtonChecked (HWND hDlg, int idButton); #endif/****** Message Box support *************************************************/#if defined(_CTRL_STATIC) && defined (_CTRL_BUTTON)#define MB_OK                   0x0000#define MB_OKCANCEL             0x0001#define MB_YESNO                0x0002#define MB_RETRYCANCEL          0x0003#define MB_ABORTRETRYIGNORE     0x0004#define MB_YESNOCANCEL          0x0005#define MB_CANCELASBACK         0x0008  // customized style#define MB_TYPEMASK             0x0007// #define MB_TYPEMASK             0x000F#define MB_ICONHAND             0x0010#define MB_ICONQUESTION         0x0020#define MB_ICONEXCLAMATION      0x0030#define MB_ICONASTERISK         0x0040#define MB_ICONMASK             0x00F0#define MB_ICONINFORMATION      MB_ICONASTERISK#define MB_ICONSTOP             MB_ICONHAND#define MB_DEFBUTTON1           0x0000#define MB_DEFBUTTON2           0x0100#define MB_DEFBUTTON3           0x0200#define MB_DEFMASK              0x0F00// #define MB_APPLMODAL            0x0000// #define MB_SYSTEMMODAL          0x1000// #define MB_TASKMODAL            0x2000#define MB_NOFOCUS              0x8000int GUIAPI MessageBox (HWND hParentWnd, const char* pszText,                       const char* pszCaption, DWORD dwStyle);#endif /* _CTRL_STATIC && _CTRL_BUTTON */void GUIAPI MessageBeep (DWORD dwBeep);#ifdef __cplusplus}#endif  /* __cplusplus */#endif // GUI_WINDOW_H

⌨️ 快捷键说明

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