示例#1
0
		static public extern int ScrollWindowEx(IntPtr hWnd, int dx, int dy,
			ref RECT rcScroll, ref RECT rcClip, IntPtr UpdateRegion, ref RECT rcInvalidated, uint flags);
示例#2
0
		public static extern bool GetWindowRect(IntPtr hWnd, ref RECT rect);
示例#3
0
		public static extern int FillRect(IntPtr hDC, ref RECT rect, IntPtr hBrush);
示例#4
0
		public extern static int GetClientRect(IntPtr hWnd, ref RECT rc);
示例#5
0
		public extern static int DrawText(IntPtr hdc, string lpString, int nCount, ref RECT lpRect, int uFormat);
示例#6
0
		public static extern void SendMessage(IntPtr hWnd, int msg, int wParam, ref RECT lParam);
示例#7
0
		static public extern bool GetMenuItemRect(IntPtr hWnd, IntPtr hMenu, uint Item, ref RECT rc);
示例#8
0
		public static void DrawText(Graphics graphics, string text, Font font, Rectangle rect)
		{
			IntPtr hdc = graphics.GetHdc();
			IntPtr fontHandle = font.ToHfont();
			IntPtr currentFontHandle = WindowsAPI.SelectObject(hdc, fontHandle);
			WindowsAPI.SetBkMode(hdc, BackgroundMode.TRANSPARENT);

			RECT rc = new RECT();
			rc.left = rect.Left;
			rc.top = rect.Top;
			rc.right = rc.left + rect.Width;
			rc.bottom = rc.top + rect.Height;

			WindowsAPI.DrawText(hdc, text, text.Length, ref rc,
				(int)(DrawTextFormatFlags.DT_SINGLELINE | DrawTextFormatFlags.DT_LEFT
				| DrawTextFormatFlags.DT_MODIFYSTRING| DrawTextFormatFlags.DT_WORD_ELLIPSIS));
			WindowsAPI.SelectObject(hdc, currentFontHandle);
			WindowsAPI.DeleteObject(fontHandle);
			graphics.ReleaseHdc(hdc);
		}