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

📄 goto.c

📁 C#一个实例源代码
💻 C
字号:
/*------------------------------------------------
   SelectClr.C 
  ------------------------------------------------*/

#include <windows.h>
#include "resource.h"

LRESULT CALLBACK WndProc     (HWND, UINT, WPARAM, LPARAM) ;
BOOL    CALLBACK GoToProc (HWND, UINT, WPARAM, LPARAM) ;

HWND hwndGoto = NULL;  // window handle of dialog box 
int iLine;             // receives line number 
BOOL fRelative;        // receives check box status 
HINSTANCE hInst;
BOOL fError; 

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
                    PSTR szCmdLine, int iCmdShow)
{
     static TCHAR szAppName[] = TEXT ("GoTo") ;
     HWND         hwnd ;
     MSG          msg ;
     WNDCLASS     wndclass ;

	 hInst=hInstance;
     
     wndclass.style         = CS_HREDRAW | CS_VREDRAW ;
     wndclass.lpfnWndProc   = WndProc ;
     wndclass.cbClsExtra    = 0 ;
     wndclass.cbWndExtra    = 0 ;
     wndclass.hInstance     = hInstance ;
     wndclass.hIcon         = LoadIcon (NULL, IDI_APPLICATION) ;
     wndclass.hCursor       = LoadCursor (NULL, IDC_ARROW) ;
     wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ;   
	 wndclass.lpszMenuName  = szAppName ;
     wndclass.lpszClassName = szAppName ;
     
     if (!RegisterClass (&wndclass))
     {
          MessageBox (NULL, TEXT ("This program requires Windows NT!"),
                      szAppName, MB_ICONERROR) ;
          return 0 ;
     }
     
     hwnd = CreateWindow (szAppName, TEXT ("Goto"),
                          WS_OVERLAPPEDWINDOW | WS_CLIPCHILDREN,
                          CW_USEDEFAULT, CW_USEDEFAULT,
                          CW_USEDEFAULT, CW_USEDEFAULT,
                          NULL, NULL, hInstance, NULL) ;
     
     ShowWindow (hwnd, iCmdShow) ;
     UpdateWindow (hwnd) ;
     
     
    while (GetMessage(&msg, NULL, 0,0))
	{
		if (hwndGoto==0 || !IsDialogMessage(hwndGoto, &msg)) 
		{
			TranslateMessage(&msg);
			DispatchMessage(&msg);
		}
	} 
    return msg.wParam ;   
}

LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
     switch (message)
     {
	  case WM_COMMAND: 
        switch (LOWORD(wParam)) 
        { 
            case IDM_GOTO: 
                if (!IsWindow(hwndGoto)) 
                { 
                    hwndGoto = CreateDialog(hInst,
						                    TEXT ("GoToDlg"), 
                                            hwnd,
											GoToProc); 
                    ShowWindow(hwndGoto, SW_SHOW); 
                } 
                break; 
        } 
        return 0; 
     case WM_DESTROY :
          PostQuitMessage (0) ;
          return 0 ;
     }
     return DefWindowProc (hwnd, message, wParam, lParam) ;
}
BOOL CALLBACK GoToProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM lParam) 
{ 
 
    switch (message) 
    { 
        case WM_INITDIALOG: 
            CheckDlgButton(hwndDlg, ID_ABSREL, fRelative); 
            return TRUE; 
 
        case WM_COMMAND: 
            switch (LOWORD(wParam)) 
            { 
                case IDOK: 
                    fRelative = IsDlgButtonChecked(hwndDlg, 
                        ID_ABSREL); 
                    iLine = GetDlgItemInt(hwndDlg, ID_LINE, 
                        &fError, fRelative); 
                    if (fError) 
                    { 
                        MessageBox(hwndDlg, TEXT("INVALIDNUMBER"), 
                            NULL, MB_OK); 
						SetFocus(GetDlgItem(hwndDlg, ID_LINE)); 
                        SendDlgItemMessage(hwndDlg,ID_LINE, 
                            EM_SETSEL, 0, -1); 
						return TRUE;
                    } 
                    else 

                    // Notify the owner window to carry out the task. 
 
                    return TRUE; 
 
                case IDCANCEL: 
                    DestroyWindow(hwndDlg); 
                    hwndGoto = NULL; 
                    return TRUE; 
            } 
    } 
    return FALSE; 
} 

⌨️ 快捷键说明

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