📄 windows.h
字号:
#define WS_VSCROLL 0x00200000L
#define WS_HSCROLL 0x00100000L
#define WS_SYSMENU 0x00080000L
#define WS_SIZEBOX 0x00040000L
#define WS_THICKFRAME 0x00040000L
#define WS_GROUP 0x00020000L
#define WS_TABSTOP 0x00010000L
#define WS_MINIMIZEBOX 0x00020000L
#define WS_MAXIMIZEBOX 0x00010000L
#define WS_ICONIC WS_MINIMIZE
/* Class styles */
#define CS_VREDRAW 0x0001
#define CS_HREDRAW 0x0002
#define CS_KEYCVTWINDOW 0x0004
#define CS_DBLCLKS 0x0008
#define CS_OEMCHARS 0x0010
#define CS_OWNDC 0x0020
#define CS_CLASSDC 0x0040
#define CS_PARENTDC 0x0080
#define CS_NOKEYCVT 0x0100
#define CS_SAVEBITS 0x0800
#define CS_NOCLOSE 0x0200
#define CS_BYTEALIGNCLIENT 0x1000
#define CS_BYTEALIGNWINDOW 0x2000
/* Shorthand for the common cases */
#define WS_TILEDWINDOW (WS_TILED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX)
#define WS_OVERLAPPEDWINDOW WS_TILEDWINDOW
#define WS_POPUPWINDOW (WS_POPUP | WS_BORDER | WS_SYSMENU)
#define WS_CHILDWINDOW (WS_CHILD)
#endif
/* clipboard metafile picture structure */
#ifndef NOMETAFILE
typedef struct tagHANDLETABLE {
HANDLE objectHandle[1];
} HANDLETABLE;
typedef HANDLETABLE *PHANDLETABLE;
typedef HANDLETABLE FAR *LPHANDLETABLE;
typedef struct tagMETARECORD {
DWORD rdSize;
WORD rdFunction;
WORD rdParm[1];
} METARECORD;
typedef METARECORD *PMETARECORD;
typedef METARECORD FAR *LPMETARECORD;
typedef struct tagMETAFILEPICT {
int mm;
int xExt, yExt;
HANDLE hMF;
} METAFILEPICT;
typedef METAFILEPICT FAR *LPMETAFILEPICT;
#endif
#ifndef NOCLIPBOARD
/* predefined clipboard formats */
#define CF_TEXT 1
#define CF_BITMAP 2
#define CF_METAFILEPICT 3
#define CF_SYLK 4
#define CF_DIF 5
#define CF_TIFF 6
#define CF_OEMTEXT 7
#define CF_OWNERDISPLAY 0x80 /* owner display */
#define CF_DSPTEXT 0x81 /* display text */
#define CF_DSPBITMAP 0x82 /* display bitmap */
#define CF_DSPMETAFILEPICT 0x83 /* display metafile */
/* Private clipboard format range */
#define CF_PRIVATEFIRST 0x200 /* Anything in this range doesn't */
#define CF_PRIVATELAST 0x2FF /* get GlobalFree'd */
#define CF_GDIOBJFIRST 0x300 /* Anything in this range gets */
#define CF_GDIOBJLAST 0x3FF /* DeleteObject'ed */
#endif
#ifndef NOHDC
#ifndef NORECT
typedef struct tagPAINTSTRUCT {
HDC hdc;
BOOL fErase;
RECT rcPaint;
BOOL fRestore;
BOOL fIncUpdate;
BYTE rgbReserved[16];
} PAINTSTRUCT;
typedef PAINTSTRUCT *PPAINTSTRUCT;
typedef PAINTSTRUCT NEAR *NPPAINTSTRUCT;
typedef PAINTSTRUCT FAR *LPPAINTSTRUCT;
#endif
#endif
#ifndef NOCREATESTRUCT
typedef struct tagCREATESTRUCT {
LPSTR lpCreateParams;
HANDLE hInstance;
HANDLE hMenu;
HWND hwndParent;
int cy;
int cx;
int y;
int x;
long style;
LPSTR lpszName;
LPSTR lpszClass;
} CREATESTRUCT;
typedef CREATESTRUCT FAR *LPCREATESTRUCT;
#endif
#ifndef NOTEXTMETRIC
/* TextMetric structure */
typedef struct tagTEXTMETRIC {
short int tmHeight;
short int tmAscent;
short int tmDescent;
short int tmInternalLeading;
short int tmExternalLeading;
short int tmAveCharWidth;
short int tmMaxCharWidth;
short int tmWeight;
BYTE tmItalic;
BYTE tmUnderlined;
BYTE tmStruckOut;
BYTE tmFirstChar;
BYTE tmLastChar;
BYTE tmDefaultChar;
BYTE tmBreakChar;
BYTE tmPitchAndFamily;
BYTE tmCharSet;
short int tmOverhang;
short int tmDigitizedAspectX;
short int tmDigitizedAspectY;
} TEXTMETRIC;
typedef TEXTMETRIC *PTEXTMETRIC;
typedef TEXTMETRIC NEAR *NPTEXTMETRIC;
typedef TEXTMETRIC FAR *LPTEXTMETRIC;
#endif
#ifndef NOGDI
/* GDI logical objects */
/* Pel Array */
typedef struct tagPELARRAY {
short int paXCount;
short int paYCount;
short int paXExt;
short int paYExt;
BYTE paRGBs;
} PELARRAY;
typedef PELARRAY *PPELARRAY;
typedef PELARRAY NEAR *NPPELARRAY;
typedef PELARRAY FAR *LPPELARRAY;
/* Logical Brush */
typedef struct tagLOGBRUSH {
WORD lbStyle;
DWORD lbColor;
short int lbHatch;
} LOGBRUSH;
typedef LOGBRUSH *PLOGBRUSH;
typedef LOGBRUSH NEAR *NPLOGBRUSH;
typedef LOGBRUSH FAR *LPLOGBRUSH;
/* A PATTERN and a LOGBRUSH are the same thing */
typedef LOGBRUSH PATTERN;
typedef PATTERN *PPATTERN;
typedef PATTERN NEAR *NPPATTERN;
typedef PATTERN FAR *LPPATTERN;
#ifndef NOPOINT
/* Logical Pen */
typedef struct tagLOGPEN {
WORD lopnStyle;
POINT lopnWidth;
DWORD lopnColor;
} LOGPEN;
typedef LOGPEN *PLOGPEN;
typedef LOGPEN NEAR *NPLOGPEN;
typedef LOGPEN FAR *LPLOGPEN;
#endif
/* Logical Font */
#define LF_FACESIZE 32
typedef struct tagLOGFONT {
short int lfHeight;
short int lfWidth;
short int lfEscapement;
short int lfOrientation;
short int lfWeight;
BYTE lfItalic;
BYTE lfUnderline;
BYTE lfStrikeOut;
BYTE lfCharSet;
BYTE lfOutPrecision;
BYTE lfClipPrecision;
BYTE lfQuality;
BYTE lfPitchAndFamily;
BYTE lfFaceName[LF_FACESIZE];
} LOGFONT;
typedef LOGFONT *PLOGFONT;
typedef LOGFONT NEAR *NPLOGFONT;
typedef LOGFONT FAR *LPLOGFONT;
/* Logical font constants */
#define OUT_DEFAULT_PRECIS 0
#define OUT_STRING_PRECIS 1
#define OUT_CHARACTER_PRECIS 2
#define OUT_STROKE_PRECIS 3
#define CLIP_DEFAULT_PRECIS 0
#define CLIP_CHARACTER_PRECIS 1
#define CLIP_STROKE_PRECIS 2
#define DEFAULT_QUALITY 0
#define DRAFT_QUALITY 1
#define PROOF_QUALITY 2
#define DEFAULT_PITCH 0
#define FIXED_PITCH 1
#define VARIABLE_PITCH 2
#define ANSI_CHARSET 0
#define SHIFTJIS_CHARSET 128 /* Kanji CharSet */
#define OEM_CHARSET 255
/* GDI font families. */
#define FF_DONTCARE (0<<4) /* Don't care or don't know. */
#define FF_ROMAN (1<<4) /* Variable stroke width, serifed. */
/* Times Roman, Century Schoolbook, etc. */
#define FF_SWISS (2<<4) /* Variable stroke width, sans-serifed. */
/* Helvetica, Swiss, etc. */
#define FF_MODERN (3<<4) /* Constant stroke width, serifed or sans-serifed. */
/* Pica, Elite, Courier, etc. */
#define FF_SCRIPT (4<<4) /* Cursive, etc. */
#define FF_DECORATIVE (5<<4) /* Old English, etc. */
/* Font weights lightest to darkest. */
#define FW_DONTCARE 0
#define FW_THIN 100
#define FW_EXTRALIGHT 200
#define FW_LIGHT 300
#define FW_NORMAL 400
#define FW_MEDIUM 500
#define FW_SEMIBOLD 600
#define FW_BOLD 700
#define FW_EXTRABOLD 800
#define FW_HEAVY 900
#define FW_ULTRALIGHT FW_EXTRALIGHT
#define FW_REGULAR FW_NORMAL
#define FW_DEMIBOLD FW_SEMIBOLD
#define FW_ULTRABOLD FW_EXTRABOLD
#define FW_BLACK FW_HEAVY
/* EnumFonts masks. */
#define RASTER_FONTTYPE 0x0001
#define DEVICE_FONTTYPE 0X0002
/* GDI rgb values packed into a dword */
#define RGB(r,g,b) (((DWORD) ((b) << 8 | (g)) << 8) | (r))
#define GetRValue(rgb) ((BYTE)(rgb))
#define GetGValue(rgb) ((BYTE)(((WORD)(rgb)) >> 8))
#define GetBValue(rgb) ((BYTE)((rgb)>>16))
/* GDI Background Modes */
#define TRANSPARENT 1
#define OPAQUE 2
/* GDI map modes */
#define MM_TEXT 1
#define MM_LOMETRIC 2
#define MM_HIMETRIC 3
#define MM_LOENGLISH 4
#define MM_HIENGLISH 5
#define MM_TWIPS 6
#define MM_ISOTROPIC 7
#define MM_ANISOTROPIC 8
/* GDI coordinate modes */
#define ABSOLUTE 1
#define RELATIVE 2
/* Stock Logical Objects */
#define WHITE_BRUSH 0
#define LTGRAY_BRUSH 1
#define GRAY_BRUSH 2
#define DKGRAY_BRUSH 3
#define BLACK_BRUSH 4
#define NULL_BRUSH 5
#define HOLLOW_BRUSH NULL_BRUSH
#define WHITE_PEN 6
#define BLACK_PEN 7
#define NULL_PEN 8
#define OEM_FIXED_FONT 10
#define ANSI_FIXED_FONT 11
#define ANSI_VAR_FONT 12
#define SYSTEM_FONT 13
#define DEVICEDEFAULT_FONT 14
/* GDI Brush Style definitions. */
#define BS_SOLID 0
#define BS_NULL 1
#define BS_HOLLOW BS_NULL
#define BS_HATCHED 2
#define BS_PATTERN 3
#define BS_INDEXED 4
/* GDI Hatch Style definitions. */
#define HS_HORIZONTAL 0 /* ----- */
#define HS_VERTICAL 1 /* ||||| */
#define HS_FDIAGONAL 2 /* ///// */
#define HS_BDIAGONAL 3 /* \\\\\ */
#define HS_CROSS 4 /* +++++ */
#define HS_DIAGCROSS 5 /* xxxxx */
/* GDI Pen Style definitions */
#define PS_SOLID 0 /* solid pen */
#define PS_DASH 1 /* ------- */
#define PS_DOT 2 /* ....... */
#define PS_DASHDOT 3 /* _._._._ */
#define PS_DASHDOTDOT 4 /* _.._.._ */
#define PS_NULL 5 /* */
/* Device Parameters for GetDeviceCaps() */
#define DRIVERVERSION 0 /* Device driver version */
#define TECHNOLOGY 2 /* Device classification */
#define HORZSIZE 4 /* Horizontal size in millimeters */
#define VERTSIZE 6 /* Vertical size in millimeters */
#define HORZRES 8 /* Horizontal width in pixels */
#define VERTRES 10 /* Vertical width in pixels */
#define BITSPIXEL 12 /* Number of bits per pixel */
#define PLANES 14 /* Number of planes */
#define NUMBRUSHES 16 /* Number of brushes the device has */
#define NUMPENS 18 /* Number of pens the device has */
#define NUMMARKERS 20 /* Number of markers the device has */
#define NUMFONTS 22 /* Number of fonts the device has */
#define NUMCOLORS 24
#define PDEVICESIZE 26 /* Size required for device descriptor */
#define CURVECAPS 28 /* Curves capabilities */
#define LINECAPS 30 /* Line capabilities */
#define POLYGONALCAPS 32 /* Polygonal capabilities */
#define TEXTCAPS 34 /* Text capabilities */
#define CLIPCAPS 36 /* Clipping capabilities */
#define RASTERCAPS 38 /* Bitblt capabilities */
#define ASPECTX 40 /* Length of the X leg */
#define ASPECTY 42 /* Length of the Y leg */
#define ASPECTXY 44 /* Length of the hypotenuse */
#define LOGPIXELSX 88 /* Logical pixels/inch in X */
#define LOGPIXELSY 90 /* Logical pixels/inch in Y */
#ifndef NOGDICAPMASKS
/* Device capability masks */
/* Device Technologies */
#define DT_PLOTTER 0 /* Vector plotter */
#define DT_RASDISPLAY 1 /* Raster display */
#define DT_RASPRINTER 2 /* Raster printer */
#define DT_RASCAMERA 3 /* Raster camera */
#define DT_CHARSTREAM 4 /* Character-stream, PLP */
#define DT_METAFILE 5 /* Metafile, VDM */
#define DT_DISPFILE 6 /* Display-file */
/* Curve Capabilities */
#define CC_NONE 0 /* Curves not supported */
#define CC_CIRCLES 1 /* Can do circles */
#define CC_PIE 2 /* Can do pie wedges */
#define CC_CHORD 4 /* Can do chord arcs */
#define CC_ELLIPSES 8 /* Can do ellipese */
#define CC_WIDE 16 /* Can do wide lines */
#define CC_STYLED 32 /* Can do styled lines */
#define CC_WIDESTYLED 64 /* Can do wide styled lines*/
#define CC_INTERIORS 128 /* Can do interiors */
/* Line Capabilities */
#define LC_NONE 0 /* Lines not supported */
#define LC_POLYLINE 2 /* Can do polylines */
#define LC_MARKER 4 /* Can do markers */
#define LC_POLYMARKER 8 /* Can do polymarkers */
#define LC_WIDE 16 /* Can do wide lines */
#define LC_STYLED 32 /* Can do styled lines */
#define LC_WIDESTYLED 64 /* Can do wide styled lines*/
#define LC_INTERIORS 128 /* Can do interiors */
/* Polygonal Capabilities */
#define PC_NONE 0 /* Polygonals not supported*/
#define PC_POLYGON 1 /* Can do polygons */
#define PC_RECTANGLE 2 /* Can do rectangles */
#define PC_TRAPEZOID 4 /* Can do trapezoids */
#define PC_SCANLINE 8 /* Can do scanlines */
#define PC_WIDE 16 /* Can do wide borders */
#define PC_STYLED 32 /* Can do styled borders */
#define PC_WIDESTYLED 64 /* Can do wide styled borders*/
#define PC_INTERIORS 128 /* Can do interiors */
/* Polygonal Capabilities */
#define CP_NONE 0 /* no clipping of Output */
#define CP_RECTANGLE 1 /* Output clipped to Rects */
/* Text Capabilities */
#define TC_OP_CHARACTER 0x0001 /* Can do OutputPrecision CHARACTER */
#define TC_OP_STROKE 0x0002 /* Can do OutputPrecision STROKE */
#define TC_CP_STROKE 0x0004 /* Can do ClipPrecision STROKE */
#define TC_CR_90 0x0008 /* Can do CharRotAbility 90 */
#define TC_CR_ANY 0x0010 /* Can do CharRotAbility ANY */
#define TC_SF_X_YINDEP 0x0020 /* Can do ScaleFreedom X_YINDEPENDENT */
#define TC_SA_DOUBLE 0x0040 /* Can do ScaleAbility DOUBLE */
#define TC_SA_INTEGER 0x0080 /* Can do ScaleAbility INTEGER */
#define TC_SA_CONTIN 0x0100 /* Can do ScaleAbility CONTINUOUS */
#define TC_EA_DOUBLE 0x0200 /* Can do EmboldenAbility DOUBLE */
#define TC_IA_ABLE 0x0400 /* Can do ItalisizeAbility ABLE */
#define TC_UA_ABLE 0x0800 /* Can do UnderlineAbility ABLE */
#define TC_SO_ABLE 0x1000 /* Can do StrikeOutAbility ABLE */
#define TC_RA_ABLE 0x2000 /* Can do RasterFontAble ABLE */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -