您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ HIWORD函数代码示例

51自学网 2021-06-01 21:23:23
  C++
这篇教程C++ HIWORD函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中HIWORD函数的典型用法代码示例。如果您正苦于以下问题:C++ HIWORD函数的具体用法?C++ HIWORD怎么用?C++ HIWORD使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了HIWORD函数的28个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: ButtonWndProc_common

/*********************************************************************** *           ButtonWndProc_common */LRESULT ButtonWndProc_common(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL unicode ){    RECT rect;    POINT pt;    LONG style = GetWindowLongW( hWnd, GWL_STYLE );    UINT btn_type = get_button_type( style );    LONG state;    HANDLE oldHbitmap;    if (!IsWindow( hWnd )) return 0;    pt.x = (short)LOWORD(lParam);    pt.y = (short)HIWORD(lParam);    switch (uMsg)    {    case WM_GETDLGCODE:        switch(btn_type)        {        case BS_USERBUTTON:        case BS_PUSHBUTTON:      return DLGC_BUTTON | DLGC_UNDEFPUSHBUTTON;        case BS_DEFPUSHBUTTON:   return DLGC_BUTTON | DLGC_DEFPUSHBUTTON;        case BS_RADIOBUTTON:        case BS_AUTORADIOBUTTON: return DLGC_BUTTON | DLGC_RADIOBUTTON;        case BS_GROUPBOX:        return DLGC_STATIC;        default:                 return DLGC_BUTTON;        }    case WM_ENABLE:        paint_button( hWnd, btn_type, ODA_DRAWENTIRE );        break;    case WM_CREATE:        if (!hbitmapCheckBoxes)        {            BITMAP bmp;            hbitmapCheckBoxes = LoadBitmapW(0, MAKEINTRESOURCEW(OBM_CHECKBOXES));            GetObjectW( hbitmapCheckBoxes, sizeof(bmp), &bmp );            checkBoxWidth  = bmp.bmWidth / 4;            checkBoxHeight = bmp.bmHeight / 3;        }        if (btn_type >= MAX_BTN_TYPE)            return -1; /* abort */        /* XP turns a BS_USERBUTTON into BS_PUSHBUTTON */        if (btn_type == BS_USERBUTTON )        {            style = (style & ~0x0f) | BS_PUSHBUTTON;            WIN_SetStyle( hWnd, style, 0x0f & ~style );        }        set_button_state( hWnd, BUTTON_UNCHECKED );        return 0;    case WM_ERASEBKGND:        if (btn_type == BS_OWNERDRAW)        {            HDC hdc = (HDC)wParam;            RECT rc;            HBRUSH hBrush;            HWND parent = GetParent(hWnd);            if (!parent) parent = hWnd;            hBrush = (HBRUSH)SendMessageW(parent, WM_CTLCOLORBTN, (WPARAM)hdc, (LPARAM)hWnd);            if (!hBrush) /* did the app forget to call defwindowproc ? */                hBrush = (HBRUSH)DefWindowProcW(parent, WM_CTLCOLORBTN,                                                (WPARAM)hdc, (LPARAM)hWnd);            GetClientRect(hWnd, &rc);            FillRect(hdc, &rc, hBrush);        }        return 1;    case WM_PRINTCLIENT:    case WM_PAINT:        if (btnPaintFunc[btn_type])        {            PAINTSTRUCT ps;            HDC hdc = wParam ? (HDC)wParam : BeginPaint( hWnd, &ps );            int nOldMode = SetBkMode( hdc, OPAQUE );            (btnPaintFunc[btn_type])( hWnd, hdc, ODA_DRAWENTIRE );            SetBkMode(hdc, nOldMode); /*  reset painting mode */            if( !wParam ) EndPaint( hWnd, &ps );        }        break;    case WM_KEYDOWN:	if (wParam == VK_SPACE)	{	    SendMessageW( hWnd, BM_SETSTATE, TRUE, 0 );            set_button_state( hWnd, get_button_state( hWnd ) | BUTTON_BTNPRESSED );            SetCapture( hWnd );	}	break;    case WM_LBUTTONDBLCLK:        if(style & BS_NOTIFY ||           btn_type == BS_RADIOBUTTON ||           btn_type == BS_USERBUTTON ||           btn_type == BS_OWNERDRAW)//.........这里部分代码省略.........
开发者ID:bilboed,项目名称:wine,代码行数:101,


示例2: Desk_WndProc

static LRESULT CALLBACK Desk_WndProc (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam){    static const UINT msgs [] = { BB_DRAGTODESKTOP, BB_REDRAWGUI, 0 };    static bool button_down, dblclk;    int n;    switch (uMsg)    {        //====================        case WM_CREATE:            hDesktopWnd = hwnd;            MakeSticky(hwnd);            MessageManager_Register(hwnd, msgs, true);            init_DeskDropTarget(hwnd);            Desk_SetPosition();            break;        //====================        case WM_DESTROY:            exit_DeskDropTarget(hwnd);            MessageManager_Register(hwnd, msgs, false);            RemoveSticky(hwnd);            break;        case WM_NCPAINT:            // dbg_printf("ncpaint: %x %x %x %x", hwnd, uMsg, wParam, lParam);            // keep the window on bottom            Desk_SetPosition();            break;        case WM_SETTINGCHANGE:            if (SPI_SETDESKWALLPAPER == wParam)                InvalidateRect(hwnd, NULL, FALSE);            break;        //====================        case WM_CLOSE:            break;        //====================        case WM_MOUSEACTIVATE:            return MA_NOACTIVATE;                case WM_LBUTTONDOWN:        case WM_RBUTTONDOWN:        case WM_MBUTTONDOWN:        case WM_XBUTTONDOWN:            dblclk = false;            button_down = true;            if (uMsg == WM_LBUTTONDOWN) {                n = 0;                goto post_click_2;            }            break;        case WM_MOUSEMOVE:            break;        case WM_LBUTTONDBLCLK:        case WM_RBUTTONDBLCLK:        case WM_MBUTTONDBLCLK:            dblclk = true;            button_down = true;            break;        case WM_LBUTTONUP: n = dblclk ? 7 : 1; goto post_click;        case WM_RBUTTONUP: n = 2; goto post_click;        case WM_MBUTTONUP: n = 3; goto post_click;        case WM_XBUTTONUP:            switch (HIWORD(wParam)) {            case XBUTTON1: n = 4; goto post_click;            case XBUTTON2: n = 5; goto post_click;            case XBUTTON3: n = 6; goto post_click;            } break;        post_click:            if (false == button_down)                break;            button_down = dblclk = false;        post_click_2:            wParam &= (MK_CONTROL|MK_SHIFT);            if (0x8000 & GetAsyncKeyState(VK_MENU))                wParam |= MK_ALT;            PostMessage(BBhwnd, BB_DESKCLICK, wParam, n);            break;        //====================        case WM_PAINT:        {            PAINTSTRUCT ps;            HDC hdc_scrn;            HDC hdc_bmp;            HGDIOBJ other;            hdc_scrn = BeginPaint(hwnd, &ps);            if (Root.bmp) {                hdc_bmp = CreateCompatibleDC(hdc_scrn);//.........这里部分代码省略.........
开发者ID:diab0l,项目名称:bbMean,代码行数:101,


示例3: switch

	LRESULT Window::WndProc(HWND hwnd, UINT nMsg, WPARAM wParam, LPARAM lParam)	{		switch (nMsg)		{		case WM_CREATE:			return 0;		case WM_CLOSE:			m_isexit = true;			return 0;		case WM_ACTIVATE:			if (LOWORD(wParam) != WA_INACTIVE)				m_active = true;			else				m_active = false;			return 0;		case WM_MOVE:			m_desc.posx = LOWORD(lParam);			m_desc.posy = HIWORD(lParam);			m_UpdateWindowState();			return 0;		case WM_SIZE:			if (!m_desc.resizing)				return 0;			m_desc.width = LOWORD(lParam);			m_desc.height = HIWORD(lParam);			m_isresize = true;			if (wParam == SIZE_MINIMIZED)			{				m_active = false;				m_minimized = true;				m_maximized = false;			}			else if (wParam == SIZE_MAXIMIZED)			{				m_active = true;				m_minimized = false;				m_maximized = true;			}			else if (wParam == SIZE_RESTORED)			{				if (m_minimized)				{					m_active = true;					m_minimized = false;				}				else if (m_maximized)				{					m_active = true;					m_maximized = false;				}			}			m_UpdateWindowState();			return 0;		case WM_MOUSEMOVE: case WM_LBUTTONUP: case WM_LBUTTONDOWN: case WM_MBUTTONUP: case WM_MBUTTONDOWN: case WM_RBUTTONUP: case WM_RBUTTONDOWN: case WM_MOUSEWHEEL: case WM_KEYDOWN: case WM_KEYUP:			if (m_inputmgr)				m_inputmgr->Run(nMsg, wParam, lParam);			return 0;		}		return DefWindowProcW(hwnd, nMsg, wParam, lParam);	}
开发者ID:HORHYSUPER,项目名称:HorhyEngine,代码行数:61,


示例4: _ConfigProc

	bool _ConfigProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam)	{		int wmId,wmEvent;		int tSel = 0;		switch(uMsg)		{			case WM_INITDIALOG:			{				wchar_t temp[128];				char temp2[192];				sprintf_s( temp2, "%S", m_Device.c_str() );				haveGuid = ! FAILED(GUIDFromString(temp2,&DevGuid));				SendMessage(GetDlgItem(hWnd,IDC_DS_DEVICE),CB_RESETCONTENT,0,0);				ndevs=0;				DirectSoundEnumerate( DSEnumCallback, NULL );				tSel=-1;				for(int i=0;i<ndevs;i++)				{					SendMessage(GetDlgItem(hWnd,IDC_DS_DEVICE),CB_ADDSTRING,0,(LPARAM)m_devices[i].name.wc_str());					if(haveGuid && IsEqualGUID(m_devices[i].guid,DevGuid) || tSel < 0 && !m_devices[i].hasGuid)						tSel = i;				}				if(tSel>=0)					SendMessage(GetDlgItem(hWnd,IDC_DS_DEVICE),CB_SETCURSEL,tSel,0);				INIT_SLIDER( IDC_BUFFERS_SLIDER, 2, MAX_BUFFER_COUNT, 2, 1, 1 );				SendMessage(GetDlgItem(hWnd,IDC_BUFFERS_SLIDER),TBM_SETPOS,TRUE,m_NumBuffers);				swprintf_s(temp, L"%d (%d ms latency)",m_NumBuffers, 1000 / (96000 / (m_NumBuffers * BufferSize)));				SetWindowText(GetDlgItem(hWnd,IDC_LATENCY_LABEL),temp);				SET_CHECK( IDC_GLOBALFOCUS_DISABLE, m_DisableGlobalFocus );				SET_CHECK( IDC_USE_HARDWARE, m_UseHardware );			}			break;			case WM_COMMAND:			{				wchar_t temp[128];				wmId    = LOWORD(wParam);				wmEvent = HIWORD(wParam);				// Parse the menu selections:				switch (wmId)				{					case IDOK:					{						int i = (int)SendMessage(GetDlgItem(hWnd,IDC_DS_DEVICE),CB_GETCURSEL,0,0);						if(!m_devices[i].hasGuid)						{							m_Device[0] = 0; // clear device name to ""						}						else						{							swprintf_s(temp, L"{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",								m_devices[i].guid.Data1,								m_devices[i].guid.Data2,								m_devices[i].guid.Data3,								m_devices[i].guid.Data4[0],								m_devices[i].guid.Data4[1],								m_devices[i].guid.Data4[2],								m_devices[i].guid.Data4[3],								m_devices[i].guid.Data4[4],								m_devices[i].guid.Data4[5],								m_devices[i].guid.Data4[6],								m_devices[i].guid.Data4[7]							);							m_Device = temp;						}						m_NumBuffers = (int)SendMessage( GetDlgItem( hWnd, IDC_BUFFERS_SLIDER ), TBM_GETPOS, 0, 0 );						if( m_NumBuffers < 2 ) m_NumBuffers = 2;						if( m_NumBuffers > MAX_BUFFER_COUNT ) m_NumBuffers = MAX_BUFFER_COUNT;						EndDialog(hWnd,0);					}					break;					case IDCANCEL:						EndDialog(hWnd,0);					break;					HANDLE_CHECK( IDC_GLOBALFOCUS_DISABLE, m_DisableGlobalFocus );					HANDLE_CHECK( IDC_USE_HARDWARE, m_UseHardware );					default:						return FALSE;				}			}			break;			case WM_HSCROLL:			{				wmId    = LOWORD(wParam);//.........这里部分代码省略.........
开发者ID:ThomasConnor,项目名称:pcsx2,代码行数:101,


示例5: switch

/** *  Callbackfunktion der WinAPI. * *  @param[in] window Fensterhandle *  @param[in] msg    Fensternachricht *  @param[in] wParam Erster Nachrichtenparameter *  @param[in] wParam Zweiter Nachrichtenparameter * *  @author FloSoft */LRESULT CALLBACK VideoWinAPI::WindowProc(HWND window, UINT msg, WPARAM wParam, LPARAM lParam){    switch(msg)    {        case WM_PASTE:        {            pVideoWinAPI->OnWMPaste();        } break;        case WM_CLOSE:        {            PostQuitMessage(0);            return 0;        } break;        case WM_ACTIVATE:        {            switch(wParam)            {                default:                case WA_ACTIVE:                {                    ShowCursor(0);                } break;                case WA_INACTIVE:                {                    ShowCursor(1);                } break;            }        } break;        case WM_SYSCOMMAND:        {            switch (wParam)            {                case SC_SCREENSAVE:                case SC_MONITORPOWER:                case SC_KEYMENU: // F10-Fehler beheben -> will sonst Fenster verschieben, was das                    // das Zeichnen unterbindet                    return 0;            }        } break;        case WM_MOUSEMOVE:        {            pVideoWinAPI->mouse_xy.x = LOWORD(lParam);            pVideoWinAPI->mouse_xy.y = HIWORD(lParam);            pVideoWinAPI->CallBack->Msg_MouseMove(pVideoWinAPI->mouse_xy);        } break;        case WM_LBUTTONDOWN:        {            pVideoWinAPI->mouse_l = true;            pVideoWinAPI->mouse_xy.ldown = true;            pVideoWinAPI->CallBack->Msg_LeftDown(pVideoWinAPI->mouse_xy);        } break;        case WM_LBUTTONUP:        {            pVideoWinAPI->mouse_l = false;            pVideoWinAPI->mouse_xy.ldown = false;            pVideoWinAPI->CallBack->Msg_LeftUp(pVideoWinAPI->mouse_xy);        } break;        case WM_RBUTTONDOWN:        {            pVideoWinAPI->mouse_r = true;            pVideoWinAPI->mouse_xy.rdown = true;            pVideoWinAPI->CallBack->Msg_RightDown(pVideoWinAPI->mouse_xy);        } break;        case WM_RBUTTONUP:        {            pVideoWinAPI->mouse_r = false;            pVideoWinAPI->mouse_xy.rdown = false;            pVideoWinAPI->CallBack->Msg_RightUp(pVideoWinAPI->mouse_xy);        } break;        case WM_MOUSEWHEEL:        {            // Obtain scrolling distance. For every multiple of WHEEL_DELTA, we have to fire an event, because we treat the wheel like two buttons.            // One wheel "step" usually produces a mouse_z  of +/- WHEEL_DELTA. But there may exist wheels without "steps" that result in lower values we have to cumulate.            pVideoWinAPI->mouse_z += GET_WHEEL_DELTA_WPARAM(wParam);            // We don't want to crash if there were even wheels that produce higher values...            while (std::abs(pVideoWinAPI->mouse_z) >= WHEEL_DELTA)            {                if (pVideoWinAPI->mouse_z > 0) // Scrolled to top                {                    pVideoWinAPI->mouse_z -= WHEEL_DELTA;                    pVideoWinAPI->CallBack->Msg_WheelUp(pVideoWinAPI->mouse_xy);                }                else // Scrolled to bottom                {                    pVideoWinAPI->mouse_z += WHEEL_DELTA;                    pVideoWinAPI->CallBack->Msg_WheelDown(pVideoWinAPI->mouse_xy);                }            }        } break;//.........这里部分代码省略.........
开发者ID:lweberk,项目名称:s25client,代码行数:101,


示例6: HIWORD

int ToolBar::getHeight() const {	DWORD size = (DWORD)SendMessage(_hSelf, TB_GETBUTTONSIZE, 0, 0);	DWORD padding = (DWORD)SendMessage(_hSelf, TB_GETPADDING, 0, 0);	int totalHeight = HIWORD(size) + HIWORD(padding) - 3;	return totalHeight;}
开发者ID:nbred5,项目名称:notepad-plus-plus,代码行数:6,


示例7: WMSize

long WMSize (HWND hwnd, WPARAM wParam, LPARAM lParam){  MoveWindow (hwndEdit, 0, 0, LOWORD (lParam), HIWORD (lParam), TRUE);  return 0;}
开发者ID:banica,项目名称:educatie,代码行数:5,


示例8: switch

//Handle Select Mode dialog boxINT_PTR CALLBACK WINDOW::SelectModeProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam){	switch(msg)	{	case WM_COMMAND:		{			switch (LOWORD(wParam))			{			case IDOK:	//If OK was pressed				{					//Make changes to resolution					if(IsDlgButtonChecked(hWnd, IDC_640))					{						Instance()->width=640;						Instance()->height=480;					}					if(IsDlgButtonChecked(hWnd, IDC_800))					{						Instance()->width=800;						Instance()->height=600;					}					if(IsDlgButtonChecked(hWnd, IDC_1024))					{						Instance()->width=1024;						Instance()->height=768;					}					EndDialog(hWnd, wParam);					return true;				}			}			switch (HIWORD(wParam))			{			case BN_CLICKED:	//If a button was pressed				{					CheckDlgButton(hWnd, lParam, BST_CHECKED);					//If it is the fullscreen button, change the variable					if((int)LOWORD(wParam) == IDC_FULLSCREEN)						Instance()->fullscreen=!Instance()->fullscreen;					//If it is an AA settings button, save the nuber of samples					if((int) LOWORD(wParam) == IDC_NOAA)						Instance()->numSamples=0;					for(int i=2; i<16; ++i)					{						if((int) LOWORD(wParam)==IDC_2AA+i-2)							Instance()->numSamples=i;					}					return true;				}			}			break;		}	case WM_INITDIALOG:		//Initiate dialog box		{			//Set default resolution			if(Instance()->width==640)				CheckRadioButton(hWnd, IDC_640, IDC_1024, IDC_640);			if(Instance()->width==800)				CheckRadioButton(hWnd, IDC_640, IDC_1024, IDC_800);			if(Instance()->width==1024)				CheckRadioButton(hWnd, IDC_640, IDC_1024, IDC_1024);			//Set default full screen			if(Instance()->fullscreen)				CheckDlgButton(hWnd, IDC_FULLSCREEN, true);			//Grey out the unsupported AA modes			HWND buttonHWnd;			for(int i=2; i<=16; ++i)			{				//requires that 2AA - 16AA have sequential ID numbers				buttonHWnd=GetDlgItem(hWnd, IDC_2AA+(i-2));				EnableWindow(buttonHWnd, Instance()->samplesSupported[i]);			}			//Set default to no AA			CheckRadioButton(hWnd, IDC_NOAA, IDC_16AA, IDC_NOAA);			return true;		}	}	return false;}
开发者ID:Yiboo,项目名称:SHDemo,代码行数:93,


示例9: gg_advoptsdlgproc

////////////////////////////////////////////////////////////////////////////////////////////// Proc: Advanced options dialogstatic INT_PTR CALLBACK gg_advoptsdlgproc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam){	switch (msg) {		case WM_INITDIALOG:		{			DBVARIANT dbv;			DWORD num;			GGPROTO *gg = (GGPROTO *)lParam;			SetWindowLongPtr(hwndDlg, GWLP_USERDATA, (LONG_PTR)lParam);			TranslateDialogDefault(hwndDlg);			if (!DBGetContactSettingString(NULL, GG_PROTO, GG_KEY_SERVERHOSTS, &dbv)) {				SetDlgItemText(hwndDlg, IDC_HOST, dbv.pszVal);				DBFreeVariant(&dbv);			}			else				SetDlgItemText(hwndDlg, IDC_HOST, GG_KEYDEF_SERVERHOSTS);			CheckDlgButton(hwndDlg, IDC_KEEPALIVE, DBGetContactSettingByte(NULL, GG_PROTO, GG_KEY_KEEPALIVE, GG_KEYDEF_KEEPALIVE));			CheckDlgButton(hwndDlg, IDC_SHOWCERRORS, DBGetContactSettingByte(NULL, GG_PROTO, GG_KEY_SHOWCERRORS, GG_KEYDEF_SHOWCERRORS));			CheckDlgButton(hwndDlg, IDC_ARECONNECT, DBGetContactSettingByte(NULL, GG_PROTO, GG_KEY_ARECONNECT, GG_KEYDEF_ARECONNECT));			CheckDlgButton(hwndDlg, IDC_MSGACK, DBGetContactSettingByte(NULL, GG_PROTO, GG_KEY_MSGACK, GG_KEYDEF_MSGACK));			CheckDlgButton(hwndDlg, IDC_MANUALHOST, DBGetContactSettingByte(NULL, GG_PROTO, GG_KEY_MANUALHOST, GG_KEYDEF_MANUALHOST));			CheckDlgButton(hwndDlg, IDC_SSLCONN, DBGetContactSettingByte(NULL, GG_PROTO, GG_KEY_SSLCONN, GG_KEYDEF_SSLCONN));			EnableWindow(GetDlgItem(hwndDlg, IDC_HOST), IsDlgButtonChecked(hwndDlg, IDC_MANUALHOST));			EnableWindow(GetDlgItem(hwndDlg, IDC_PORT), IsDlgButtonChecked(hwndDlg, IDC_MANUALHOST));			CheckDlgButton(hwndDlg, IDC_DIRECTCONNS, DBGetContactSettingByte(NULL, GG_PROTO, GG_KEY_DIRECTCONNS, GG_KEYDEF_DIRECTCONNS));			if (num = DBGetContactSettingWord(NULL, GG_PROTO, GG_KEY_DIRECTPORT, GG_KEYDEF_DIRECTPORT))				SetDlgItemText(hwndDlg, IDC_DIRECTPORT, ditoa(num));			CheckDlgButton(hwndDlg, IDC_FORWARDING, DBGetContactSettingByte(NULL, GG_PROTO, GG_KEY_FORWARDING, GG_KEYDEF_FORWARDING));			if (!DBGetContactSettingString(NULL, GG_PROTO, GG_KEY_FORWARDHOST, &dbv)) {				SetDlgItemText(hwndDlg, IDC_FORWARDHOST, dbv.pszVal);				DBFreeVariant(&dbv);			}			if (num = DBGetContactSettingWord(NULL, GG_PROTO, GG_KEY_FORWARDPORT, GG_KEYDEF_FORWARDPORT))				SetDlgItemText(hwndDlg, IDC_FORWARDPORT, ditoa(num));			EnableWindow(GetDlgItem(hwndDlg, IDC_DIRECTPORT), IsDlgButtonChecked(hwndDlg, IDC_DIRECTCONNS));			EnableWindow(GetDlgItem(hwndDlg, IDC_FORWARDING), IsDlgButtonChecked(hwndDlg, IDC_DIRECTCONNS));			EnableWindow(GetDlgItem(hwndDlg, IDC_FORWARDPORT), IsDlgButtonChecked(hwndDlg, IDC_FORWARDING) && IsDlgButtonChecked(hwndDlg, IDC_DIRECTCONNS));			EnableWindow(GetDlgItem(hwndDlg, IDC_FORWARDHOST), IsDlgButtonChecked(hwndDlg, IDC_FORWARDING) && IsDlgButtonChecked(hwndDlg, IDC_DIRECTCONNS));			break;		}		case WM_COMMAND:		{			if ((LOWORD(wParam) == IDC_DIRECTPORT || LOWORD(wParam) == IDC_FORWARDHOST || LOWORD(wParam) == IDC_FORWARDPORT)				&& (HIWORD(wParam) != EN_CHANGE || (HWND) lParam != GetFocus()))				return 0;			switch (LOWORD(wParam)) {				case IDC_MANUALHOST:				{					EnableWindow(GetDlgItem(hwndDlg, IDC_HOST), IsDlgButtonChecked(hwndDlg, IDC_MANUALHOST));					EnableWindow(GetDlgItem(hwndDlg, IDC_PORT), IsDlgButtonChecked(hwndDlg, IDC_MANUALHOST));					ShowWindow(GetDlgItem(hwndDlg, IDC_RELOADREQD), SW_SHOW);					break;				}				case IDC_DIRECTCONNS:				case IDC_FORWARDING:				{					EnableWindow(GetDlgItem(hwndDlg, IDC_DIRECTPORT), IsDlgButtonChecked(hwndDlg, IDC_DIRECTCONNS));					EnableWindow(GetDlgItem(hwndDlg, IDC_FORWARDING), IsDlgButtonChecked(hwndDlg, IDC_DIRECTCONNS));					EnableWindow(GetDlgItem(hwndDlg, IDC_FORWARDPORT), IsDlgButtonChecked(hwndDlg, IDC_FORWARDING) && IsDlgButtonChecked(hwndDlg, IDC_DIRECTCONNS));					EnableWindow(GetDlgItem(hwndDlg, IDC_FORWARDHOST), IsDlgButtonChecked(hwndDlg, IDC_FORWARDING) && IsDlgButtonChecked(hwndDlg, IDC_DIRECTCONNS));					ShowWindow(GetDlgItem(hwndDlg, IDC_RELOADREQD), SW_SHOW);					break;				}			}			SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);			break;		}		case WM_NOTIFY:		{			switch (((LPNMHDR) lParam)->code) {				case PSN_APPLY:				{					char str[512];					GGPROTO *gg = (GGPROTO *)GetWindowLongPtr(hwndDlg, GWLP_USERDATA);					DBWriteContactSettingByte(NULL, GG_PROTO, GG_KEY_KEEPALIVE, (BYTE) IsDlgButtonChecked(hwndDlg, IDC_KEEPALIVE));					DBWriteContactSettingByte(NULL, GG_PROTO, GG_KEY_SHOWCERRORS, (BYTE) IsDlgButtonChecked(hwndDlg, IDC_SHOWCERRORS));					DBWriteContactSettingByte(NULL, GG_PROTO, GG_KEY_ARECONNECT, (BYTE) IsDlgButtonChecked(hwndDlg, IDC_ARECONNECT));					DBWriteContactSettingByte(NULL, GG_PROTO, GG_KEY_MSGACK, (BYTE) IsDlgButtonChecked(hwndDlg, IDC_MSGACK));					DBWriteContactSettingByte(NULL, GG_PROTO, GG_KEY_MANUALHOST, (BYTE) IsDlgButtonChecked(hwndDlg, IDC_MANUALHOST));					DBWriteContactSettingByte(NULL, GG_PROTO, GG_KEY_SSLCONN, (BYTE) IsDlgButtonChecked(hwndDlg, IDC_SSLCONN));					// Transfer settings					DBWriteContactSettingByte(NULL, GG_PROTO, GG_KEY_DIRECTCONNS, (BYTE) IsDlgButtonChecked(hwndDlg, IDC_DIRECTCONNS));					DBWriteContactSettingByte(NULL, GG_PROTO, GG_KEY_FORWARDING, (BYTE) IsDlgButtonChecked(hwndDlg, IDC_FORWARDING));					// Write custom servers					GetDlgItemText(hwndDlg, IDC_HOST, str, sizeof(str));					DBWriteContactSettingString(NULL, GG_PROTO, GG_KEY_SERVERHOSTS, str);					// Write direct port					GetDlgItemText(hwndDlg, IDC_DIRECTPORT, str, sizeof(str));					DBWriteContactSettingWord(NULL, GG_PROTO, GG_KEY_DIRECTPORT, (WORD)atoi(str));					// Write forwarding host//.........这里部分代码省略.........
开发者ID:raoergsls,项目名称:miranda,代码行数:101,


示例10: gg_detailsdlgproc

//.........这里部分代码省略.........							SetValue(hwndDlg, IDC_LASTNAME, hContact, szProto, "LastName", SVS_NORMAL, hContact != NULL);							SetValue(hwndDlg, IDC_NICKNAME, hContact, szProto, "NickName", SVS_NORMAL, hContact != NULL);							SetValue(hwndDlg, IDC_BIRTHYEAR, hContact, szProto, "BirthYear", SVS_ZEROISUNSPEC, hContact != NULL);							SetValue(hwndDlg, IDC_CITY, hContact, szProto, "City", SVS_NORMAL, hContact != NULL);							SetValue(hwndDlg, IDC_FAMILYNAME, hContact, szProto, "FamilyName", SVS_NORMAL, hContact != NULL);							SetValue(hwndDlg, IDC_CITYORIGIN, hContact, szProto, "CityOrigin", SVS_NORMAL, hContact != NULL);							if (hContact)							{								SetValue(hwndDlg, IDC_GENDER, hContact, szProto, "Gender", SVS_GENDER, hContact != NULL);								SetValue(hwndDlg, IDC_STATUSDESCR, hContact, "CList", GG_KEY_STATUSDESCR, SVS_NORMAL, hContact != NULL);							}							else switch((char)DBGetContactSettingByte(hContact, GG_PROTO, "Gender", (BYTE)'?'))							{								case 'F':									SendDlgItemMessage(hwndDlg, IDC_GENDER, CB_SETCURSEL, 1, 0);									break;								case 'M':									SendDlgItemMessage(hwndDlg, IDC_GENDER, CB_SETCURSEL, 2, 0);									break;								default:									SendDlgItemMessage(hwndDlg, IDC_GENDER, CB_SETCURSEL, 0, 0);							}							// Disable when updating							if(dat) dat->disableUpdate = FALSE;							break;						}					}					break;				}				break;		case WM_COMMAND:			if (dat && !dat->hContact && LOWORD(wParam) == IDC_SAVE && HIWORD(wParam) == BN_CLICKED)			{				// Save user data				char text[256];				gg_pubdir50_t req;				GGPROTO *gg = dat->gg;				if (!gg_isonline(gg))				{					MessageBox(NULL,						Translate("You have to be logged in before you can change your details."),						GG_PROTONAME, MB_OK | MB_ICONSTOP					);					break;				}				EnableWindow(GetDlgItem(hwndDlg, IDC_SAVE), FALSE);				req = gg_pubdir50_new(GG_PUBDIR50_WRITE);				GetDlgItemText(hwndDlg, IDC_FIRSTNAME, text, sizeof(text));				if (strlen(text)) gg_pubdir50_add(req, GG_PUBDIR50_FIRSTNAME, text);				GetDlgItemText(hwndDlg, IDC_LASTNAME, text, sizeof(text));				if (strlen(text)) gg_pubdir50_add(req, GG_PUBDIR50_LASTNAME, text);				GetDlgItemText(hwndDlg, IDC_NICKNAME, text, sizeof(text));				if (strlen(text)) gg_pubdir50_add(req, GG_PUBDIR50_NICKNAME, text);				GetDlgItemText(hwndDlg, IDC_CITY, text, sizeof(text));				if (strlen(text)) gg_pubdir50_add(req, GG_PUBDIR50_CITY, text);				// Gadu-Gadu Female <-> Male
开发者ID:raoergsls,项目名称:miranda,代码行数:67,


示例11: gg_confoptsdlgproc

////////////////////////////////////////////////////////////////////////////////////////////// Proc: Conference options dialogstatic INT_PTR CALLBACK gg_confoptsdlgproc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam){	switch (msg) {		case WM_INITDIALOG:		{			DWORD num;			GGPROTO *gg = (GGPROTO *)lParam;			SetWindowLongPtr(hwndDlg, GWLP_USERDATA, (LONG_PTR)lParam);			TranslateDialogDefault(hwndDlg);			SendDlgItemMessage(hwndDlg, IDC_GC_POLICY_TOTAL, CB_ADDSTRING, 0, (LPARAM)Translate("Allow"));			SendDlgItemMessage(hwndDlg, IDC_GC_POLICY_TOTAL, CB_ADDSTRING, 0, (LPARAM)Translate("Ask"));			SendDlgItemMessage(hwndDlg, IDC_GC_POLICY_TOTAL, CB_ADDSTRING, 0, (LPARAM)Translate("Ignore"));			SendDlgItemMessage(hwndDlg, IDC_GC_POLICY_TOTAL, CB_SETCURSEL,				DBGetContactSettingWord(NULL, GG_PROTO, GG_KEY_GC_POLICY_TOTAL, GG_KEYDEF_GC_POLICY_TOTAL), 0);			if (num = DBGetContactSettingWord(NULL, GG_PROTO, GG_KEY_GC_COUNT_TOTAL, GG_KEYDEF_GC_COUNT_TOTAL))				SetDlgItemText(hwndDlg, IDC_GC_COUNT_TOTAL, ditoa(num));			SendDlgItemMessage(hwndDlg, IDC_GC_POLICY_UNKNOWN, CB_ADDSTRING, 0, (LPARAM)Translate("Allow"));			SendDlgItemMessage(hwndDlg, IDC_GC_POLICY_UNKNOWN, CB_ADDSTRING, 0, (LPARAM)Translate("Ask"));			SendDlgItemMessage(hwndDlg, IDC_GC_POLICY_UNKNOWN, CB_ADDSTRING, 0, (LPARAM)Translate("Ignore"));			SendDlgItemMessage(hwndDlg, IDC_GC_POLICY_UNKNOWN, CB_SETCURSEL,				DBGetContactSettingWord(NULL, GG_PROTO, GG_KEY_GC_POLICY_UNKNOWN, GG_KEYDEF_GC_POLICY_UNKNOWN), 0);			if (num = DBGetContactSettingWord(NULL, GG_PROTO, GG_KEY_GC_COUNT_UNKNOWN, GG_KEYDEF_GC_COUNT_UNKNOWN))				SetDlgItemText(hwndDlg, IDC_GC_COUNT_UNKNOWN, ditoa(num));			SendDlgItemMessage(hwndDlg, IDC_GC_POLICY_DEFAULT, CB_ADDSTRING, 0, (LPARAM)Translate("Allow"));			SendDlgItemMessage(hwndDlg, IDC_GC_POLICY_DEFAULT, CB_ADDSTRING, 0, (LPARAM)Translate("Ask"));			SendDlgItemMessage(hwndDlg, IDC_GC_POLICY_DEFAULT, CB_ADDSTRING, 0, (LPARAM)Translate("Ignore"));			SendDlgItemMessage(hwndDlg, IDC_GC_POLICY_DEFAULT, CB_SETCURSEL,				DBGetContactSettingWord(NULL, GG_PROTO, GG_KEY_GC_POLICY_DEFAULT, GG_KEYDEF_GC_POLICY_DEFAULT), 0);			break;		}		case WM_COMMAND:		{			if ((LOWORD(wParam) == IDC_GC_COUNT_TOTAL || LOWORD(wParam) == IDC_GC_COUNT_UNKNOWN)				&& (HIWORD(wParam) != EN_CHANGE || (HWND) lParam != GetFocus()))				return 0;			SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);			break;		}		case WM_NOTIFY:		{			switch (((LPNMHDR) lParam)->code) {				case PSN_APPLY:				{					char str[128];					GGPROTO *gg = (GGPROTO *)GetWindowLongPtr(hwndDlg, GWLP_USERDATA);					// Write groupchat policy					DBWriteContactSettingWord(NULL, GG_PROTO, GG_KEY_GC_POLICY_TOTAL,						(WORD)SendDlgItemMessage(hwndDlg, IDC_GC_POLICY_TOTAL, CB_GETCURSEL, 0, 0));					DBWriteContactSettingWord(NULL, GG_PROTO, GG_KEY_GC_POLICY_UNKNOWN,						(WORD)SendDlgItemMessage(hwndDlg, IDC_GC_POLICY_UNKNOWN, CB_GETCURSEL, 0, 0));					DBWriteContactSettingWord(NULL, GG_PROTO, GG_KEY_GC_POLICY_DEFAULT,						(WORD)SendDlgItemMessage(hwndDlg, IDC_GC_POLICY_DEFAULT, CB_GETCURSEL, 0, 0));					GetDlgItemText(hwndDlg, IDC_GC_COUNT_TOTAL, str, sizeof(str));					DBWriteContactSettingWord(NULL, GG_PROTO, GG_KEY_GC_COUNT_TOTAL, (WORD)atoi(str));					GetDlgItemText(hwndDlg, IDC_GC_COUNT_UNKNOWN, str, sizeof(str));					DBWriteContactSettingWord(NULL, GG_PROTO, GG_KEY_GC_COUNT_UNKNOWN, (WORD)atoi(str));					break;				}			}			break;		}	}	return FALSE;}
开发者ID:raoergsls,项目名称:miranda,代码行数:74,


示例12: gg_genoptsdlgproc

////////////////////////////////////////////////////////////////////////////////////////////// Proc: General options dialogstatic INT_PTR CALLBACK gg_genoptsdlgproc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam){	switch (msg) {		case WM_INITDIALOG:		{			DBVARIANT dbv;			DWORD num;			GGPROTO *gg = (GGPROTO *)lParam;			SetWindowLongPtr(hwndDlg, GWLP_USERDATA, (LONG_PTR)lParam);			TranslateDialogDefault(hwndDlg);			if (num = DBGetContactSettingDword(NULL, GG_PROTO, GG_KEY_UIN, 0))			{				SetDlgItemText(hwndDlg, IDC_UIN, ditoa(num));				ShowWindow(GetDlgItem(hwndDlg, IDC_CREATEACCOUNT), SW_HIDE);			}			else			{				ShowWindow(GetDlgItem(hwndDlg, IDC_CHPASS), SW_HIDE);				ShowWindow(GetDlgItem(hwndDlg, IDC_REMOVEACCOUNT), SW_HIDE);				ShowWindow(GetDlgItem(hwndDlg, IDC_LOSTPASS), SW_HIDE);			}			if (!DBGetContactSettingString(NULL, GG_PROTO, GG_KEY_PASSWORD, &dbv)) {				CallService(MS_DB_CRYPT_DECODESTRING, strlen(dbv.pszVal) + 1, (LPARAM) dbv.pszVal);				SetDlgItemText(hwndDlg, IDC_PASSWORD, dbv.pszVal);				DBFreeVariant(&dbv);			}			if (!DBGetContactSettingString(NULL, GG_PROTO, GG_KEY_EMAIL, &dbv)) {				SetDlgItemText(hwndDlg, IDC_EMAIL, dbv.pszVal);				DBFreeVariant(&dbv);			}			else			{				ShowWindow(GetDlgItem(hwndDlg, IDC_LOSTPASS), SW_HIDE);				ShowWindow(GetDlgItem(hwndDlg, IDC_CHPASS), SW_HIDE);			}			CheckDlgButton(hwndDlg, IDC_FRIENDSONLY, DBGetContactSettingByte(NULL, GG_PROTO, GG_KEY_FRIENDSONLY, GG_KEYDEF_FRIENDSONLY));			CheckDlgButton(hwndDlg, IDC_SHOWINVISIBLE, DBGetContactSettingByte(NULL, GG_PROTO, GG_KEY_SHOWINVISIBLE, GG_KEYDEF_SHOWINVISIBLE));			CheckDlgButton(hwndDlg, IDC_LEAVESTATUSMSG, DBGetContactSettingByte(NULL, GG_PROTO, GG_KEY_LEAVESTATUSMSG, GG_KEYDEF_LEAVESTATUSMSG));			if(gg->gc_enabled)				CheckDlgButton(hwndDlg, IDC_IGNORECONF, DBGetContactSettingByte(NULL, GG_PROTO, GG_KEY_IGNORECONF, GG_KEYDEF_IGNORECONF));			else			{				EnableWindow(GetDlgItem(hwndDlg, IDC_IGNORECONF), FALSE);				CheckDlgButton(hwndDlg, IDC_IGNORECONF, TRUE);			}			CheckDlgButton(hwndDlg, IDC_IMGRECEIVE, DBGetContactSettingByte(NULL, GG_PROTO, GG_KEY_IMGRECEIVE, GG_KEYDEF_IMGRECEIVE));			CheckDlgButton(hwndDlg, IDC_SHOWLINKS, DBGetContactSettingByte(NULL, GG_PROTO, GG_KEY_SHOWLINKS, GG_KEYDEF_SHOWLINKS));			CheckDlgButton(hwndDlg, IDC_ENABLEAVATARS, DBGetContactSettingByte(NULL, GG_PROTO, GG_KEY_ENABLEAVATARS, GG_KEYDEF_ENABLEAVATARS));			EnableWindow(GetDlgItem(hwndDlg, IDC_LEAVESTATUS), IsDlgButtonChecked(hwndDlg, IDC_LEAVESTATUSMSG));			EnableWindow(GetDlgItem(hwndDlg, IDC_IMGMETHOD), IsDlgButtonChecked(hwndDlg, IDC_IMGRECEIVE));			SendDlgItemMessage(hwndDlg, IDC_LEAVESTATUS, CB_ADDSTRING, 0, (LPARAM)Translate("<Last Status>"));	// 0			SendDlgItemMessage(hwndDlg, IDC_LEAVESTATUS, CB_ADDSTRING, 0, (LPARAM)Translate("Online")); 		// ID_STATUS_ONLINE			SendDlgItemMessage(hwndDlg, IDC_LEAVESTATUS, CB_ADDSTRING, 0, (LPARAM)Translate("Away"));			// ID_STATUS_AWAY			SendDlgItemMessage(hwndDlg, IDC_LEAVESTATUS, CB_ADDSTRING, 0, (LPARAM)Translate("DND"));			// ID_STATUS_DND			SendDlgItemMessage(hwndDlg, IDC_LEAVESTATUS, CB_ADDSTRING, 0, (LPARAM)Translate("Free for chat"));	// ID_STATUS_FREECHAT			SendDlgItemMessage(hwndDlg, IDC_LEAVESTATUS, CB_ADDSTRING, 0, (LPARAM)Translate("Invisible"));		// ID_STATUS_INVISIBLE			switch(DBGetContactSettingWord(NULL, GG_PROTO, GG_KEY_LEAVESTATUS, GG_KEYDEF_LEAVESTATUS))			{				case ID_STATUS_ONLINE:					SendDlgItemMessage(hwndDlg, IDC_LEAVESTATUS, CB_SETCURSEL, 1, 0);					break;				case ID_STATUS_AWAY:					SendDlgItemMessage(hwndDlg, IDC_LEAVESTATUS, CB_SETCURSEL, 2, 0);					break;				case ID_STATUS_DND:					SendDlgItemMessage(hwndDlg, IDC_LEAVESTATUS, CB_SETCURSEL, 3, 0);					break;				case ID_STATUS_FREECHAT:					SendDlgItemMessage(hwndDlg, IDC_LEAVESTATUS, CB_SETCURSEL, 4, 0);					break;				case ID_STATUS_INVISIBLE:					SendDlgItemMessage(hwndDlg, IDC_LEAVESTATUS, CB_SETCURSEL, 5, 0);					break;				default:					SendDlgItemMessage(hwndDlg, IDC_LEAVESTATUS, CB_SETCURSEL, 0, 0);			}			SendDlgItemMessage(hwndDlg, IDC_IMGMETHOD, CB_ADDSTRING, 0, (LPARAM)Translate("System tray icon"));			SendDlgItemMessage(hwndDlg, IDC_IMGMETHOD, CB_ADDSTRING, 0, (LPARAM)Translate("Popup window"));			SendDlgItemMessage(hwndDlg, IDC_IMGMETHOD, CB_ADDSTRING, 0, (LPARAM)Translate("Message with [img] BBCode"));			SendDlgItemMessage(hwndDlg, IDC_IMGMETHOD, CB_SETCURSEL,				DBGetContactSettingByte(NULL, GG_PROTO, GG_KEY_IMGMETHOD, GG_KEYDEF_IMGMETHOD), 0);			break;		}		case WM_COMMAND:		{			if ((LOWORD(wParam) == IDC_UIN || LOWORD(wParam) == IDC_PASSWORD || LOWORD(wParam) == IDC_EMAIL)				&& (HIWORD(wParam) != EN_CHANGE || (HWND) lParam != GetFocus()))				return 0;			switch (LOWORD(wParam)) {				case IDC_EMAIL:				case IDC_UIN:				{					gg_optsdlgcheck(hwndDlg);					break;//.........这里部分代码省略.........
开发者ID:raoergsls,项目名称:miranda,代码行数:101,


示例13: PtrToUlong

LRESULT CALLBACK BaseApp::wndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam){	LRESULT result = 0;	if (message == WM_CREATE)	{		LPCREATESTRUCT pcs = (LPCREATESTRUCT)lParam;		BaseApp *pBaseApp = (BaseApp *)pcs->lpCreateParams;		::SetWindowLongPtrW(			hwnd,			GWLP_USERDATA,			PtrToUlong(pBaseApp)			);		result = 1;	}	else	{		BaseApp *pBaseApp = reinterpret_cast<BaseApp *>(static_cast<LONG_PTR>(			::GetWindowLongPtrW(			hwnd,			GWLP_USERDATA			)));		bool wasHandled = false;		UINT width = LOWORD(lParam);		UINT height = HIWORD(lParam);		if (pBaseApp)		{			switch (message)			{			case WM_KEYDOWN:				pBaseApp->onKeyDown(wParam);				InvalidateRect(hwnd, NULL, FALSE);				break;			case WM_SIZE:				pBaseApp->onResize(width, height);				result = 0;				wasHandled = true;				break;			case WM_DISPLAYCHANGE:				InvalidateRect(hwnd, NULL, FALSE);				result = 0;				wasHandled = true;				break;			case WM_PAINT:				pBaseApp->onRender();				ValidateRect(hwnd, NULL);				result = 0;				wasHandled = true;				break;			case WM_DESTROY:				PostQuitMessage(0);				result = 1;				wasHandled = true;				break;			case WM_LBUTTONDOWN:				pBaseApp->onLButtonDown(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam), (DWORD)wParam);				break;			case WM_LBUTTONUP:				pBaseApp->onLButtonUp();				break;			case WM_MOUSEMOVE:				pBaseApp->onMouseMove(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam), (DWORD)wParam);				break;			}		}		if (!wasHandled)		{			result = DefWindowProc(hwnd, message, wParam, lParam);		}	}	return result;}
开发者ID:tomnoiprasit,项目名称:GameProject1,代码行数:80,


示例14: wndProc

static LRESULT CALLBACK wndProc(HWND wnd, UINT message,                                WPARAM wParam, LPARAM lParam){    int useDefWindowProc = 0;    JNIEnv *env = NULL;    jobject window = NULL;    BOOL isKeyDown = FALSE;    WindowUserData * wud;#ifdef DEBUG_KEYS    if (  WM_KEYDOWN == message ) {        STD_PRINT("*** WindowsWindow: wndProc window %p, 0x%X %d/%d/n", wnd, message, (int)LOWORD(lParam), (int)HIWORD(lParam));    }#endif#if defined(UNDER_CE) || _MSC_VER <= 1200    wud = (WindowUserData *) GetWindowLong(wnd, GWL_USERDATA);#else    wud = (WindowUserData *) GetWindowLongPtr(wnd, GWLP_USERDATA);#endif    if(NULL==wud) {        return DefWindowProc(wnd, message, wParam, lParam);    }    env = wud->jenv;    window = wud->jinstance;    if (NULL==window || NULL==env) {        return DefWindowProc(wnd, message, wParam, lParam);    }    // DBG_PRINT("*** WindowsWindow: window %p -> %p, 0x%X %d/%d/n", wnd, window, message, (int)LOWORD(lParam), (int)HIWORD(lParam));    switch (message) {    //    // The signal pipeline for destruction is:    //    Java::DestroyWindow(wnd) _or_ window-close-button ->     //     WM_CLOSE -> Java::windowDestroyNotify -> W_DESTROY -> Java::windowDestroyed ->    //       Java::CleanupWindowResources()    case WM_CLOSE:        (*env)->CallVoidMethod(env, window, windowDestroyNotifyID);        break;    case WM_DESTROY:        {#if defined(UNDER_CE) || _MSC_VER <= 1200            SetWindowLong(wnd, GWL_USERDATA, (intptr_t) NULL);#else            SetWindowLongPtr(wnd, GWLP_USERDATA, (intptr_t) NULL);#endif            free(wud); wud=NULL;            (*env)->CallVoidMethod(env, window, windowDestroyedID);            (*env)->DeleteGlobalRef(env, window);        }        break;    case WM_SYSCHAR:        useDefWindowProc = WmChar(env, window, wParam,                                  LOWORD(lParam), HIWORD(lParam), FALSE);        break;    case WM_CHAR:        useDefWindowProc = WmChar(env, window, wParam,                                  LOWORD(lParam), HIWORD(lParam), TRUE);        break;            case WM_KEYDOWN:#ifdef DEBUG_KEYS        STD_PRINT("*** WindowsWindow: windProc sending window %p -> %p, 0x%X %d/%d/n", wnd, window, message, (int)LOWORD(lParam), (int)HIWORD(lParam));#endif        useDefWindowProc = WmKeyDown(env, window, wParam,                                     LOWORD(lParam), HIWORD(lParam), FALSE);        break;    case WM_KEYUP:        useDefWindowProc = WmKeyUp(env, window, wParam,                                   LOWORD(lParam), HIWORD(lParam), FALSE);        break;    case WM_SIZE:        WmSize(env, wnd, window, (UINT)wParam);        break;    case WM_SETTINGCHANGE:        if (wParam == SPI_SETNONCLIENTMETRICS) {            // make sure insets are updated, we don't need to resize the window             // because the size of the client area doesn't change            (void)UpdateInsets(env, wnd, window);        } else {            useDefWindowProc = 1;        }        break;    case WM_LBUTTONDOWN:        NewtWindows_requestFocus ( wnd ); // request focus on this window, if not already ..        (*env)->CallVoidMethod(env, window, sendMouseEventID,                               (jint) EVENT_MOUSE_PRESSED,                               GetModifiers(),                               (jint) LOWORD(lParam), (jint) HIWORD(lParam),//.........这里部分代码省略.........
开发者ID:Dahie,项目名称:jogl,代码行数:101,


示例15: switch

LRESULT VLCControlsWnd::WindowProc(UINT uMsg, WPARAM wParam, LPARAM lParam){    switch(uMsg){        case WM_CREATE:{            const int ControlsHeight = 21+3;            const int ButtonsWidth = ControlsHeight;            int HorizontalOffset = xControlsSpace;            int ControlWidth = ButtonsWidth;            hPlayPauseButton =                CreateWindow(TEXT("BUTTON"), TEXT("Play/Pause"),                             WS_CHILD|WS_VISIBLE|BS_BITMAP|BS_FLAT,                             HorizontalOffset, xControlsSpace,                             ControlWidth, ControlsHeight, hWnd(),                             (HMENU)ID_FS_PLAY_PAUSE, 0, 0);            SendMessage(hPlayPauseButton, BM_SETIMAGE,                        (WPARAM)IMAGE_BITMAP, (LPARAM)RC().hPauseBitmap);            HorizontalOffset+=ControlWidth+xControlsSpace;            ControlWidth = 200;            int VideoPosControlHeight = 10;            hVideoPosScroll =                CreateWindow(PROGRESS_CLASS, TEXT("Video Position"),                             WS_CHILD|WS_DISABLED|WS_VISIBLE|SBS_HORZ|SBS_TOPALIGN|PBS_SMOOTH,                             HorizontalOffset, xControlsSpace+(ControlsHeight-VideoPosControlHeight)/2,                             ControlWidth, VideoPosControlHeight, hWnd(),                             (HMENU)ID_FS_VIDEO_POS_SCROLL, 0, 0);            HMODULE hThModule = LoadLibrary(TEXT("UxTheme.dll"));            if(hThModule){                FARPROC proc = GetProcAddress(hThModule, "SetWindowTheme");                typedef HRESULT (WINAPI* SetWindowThemeProc)(HWND, LPCWSTR, LPCWSTR);                if(proc){                    ((SetWindowThemeProc)proc)(hVideoPosScroll, L"", L"");                }                FreeLibrary(hThModule);            }            HorizontalOffset+=ControlWidth+xControlsSpace;            ControlWidth = ButtonsWidth;            hMuteButton =                CreateWindow(TEXT("BUTTON"), TEXT("Mute"),                             WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX|BS_PUSHLIKE|BS_BITMAP, //BS_FLAT                             HorizontalOffset, xControlsSpace,                             ControlWidth, ControlsHeight,                             hWnd(), (HMENU)ID_FS_MUTE, 0, 0);            SendMessage(hMuteButton, BM_SETIMAGE, (WPARAM)IMAGE_BITMAP,                        (LPARAM)RC().hVolumeBitmap);            HorizontalOffset+=ControlWidth+xControlsSpace;            ControlWidth = 100;            hVolumeSlider =                CreateWindow(TRACKBAR_CLASS, TEXT("Volume"),                             WS_CHILD|WS_VISIBLE|TBS_HORZ|TBS_BOTTOM|TBS_AUTOTICKS,                             HorizontalOffset, xControlsSpace,                             ControlWidth, ControlsHeight - 4, hWnd(),                             (HMENU)ID_FS_VOLUME, 0, 0);            HorizontalOffset+=ControlWidth+xControlsSpace;            SendMessage(hVolumeSlider, TBM_SETRANGE, FALSE, (LPARAM) MAKELONG (0, 100));            SendMessage(hVolumeSlider, TBM_SETTICFREQ, (WPARAM) 10, 0);            ControlWidth = ButtonsWidth;            DWORD dwFSBtnStyle = WS_CHILD|BS_BITMAP|BS_FLAT;            if( !PO() || PO()->get_enable_fs() ){                dwFSBtnStyle |= WS_VISIBLE;            }            hFSButton =                CreateWindow(TEXT("BUTTON"), TEXT("Toggle fullscreen"),                             dwFSBtnStyle,                             HorizontalOffset, xControlsSpace,                             ControlWidth, ControlsHeight, hWnd(),                             (HMENU)ID_FS_SWITCH_FS, 0, 0);            SendMessage(hFSButton, BM_SETIMAGE, (WPARAM)IMAGE_BITMAP,                        (LPARAM)RC().hDeFullscreenBitmap);            HorizontalOffset+=ControlWidth+xControlsSpace;            RECT rect;            GetClientRect(GetParent(hWnd()), &rect);            int ControlWndWidth = HorizontalOffset;            int ControlWndHeight = xControlsSpace+ControlsHeight+xControlsSpace;            SetWindowPos(hWnd(), 0,                         0, (rect.bottom - rect.top) - ControlWndWidth,                         rect.right-rect.left, ControlWndHeight,                         SWP_NOZORDER|SWP_NOOWNERZORDER|SWP_NOACTIVATE);            //new message blinking timer            SetTimer(hWnd(), 2, 500, NULL);            CreateToolTip();            break;        }        case WM_SHOWWINDOW:{            if(FALSE!=wParam){ //showing                UpdateButtons();            }            break;        }        case WM_LBUTTONUP:{            POINT BtnUpPoint = {LOWORD(lParam), HIWORD(lParam)};//.........这里部分代码省略.........
开发者ID:FranEstSol,项目名称:vc-axnp-vlc,代码行数:101,


示例16: PeekMessage

/* * Class:     com_jogamp_newt_impl_windows_WindowsDisplay * Method:    DispatchMessages * Signature: ()V */JNIEXPORT void JNICALL Java_com_jogamp_newt_impl_windows_WindowsDisplay_DispatchMessages  (JNIEnv *env, jclass clazz){    int i = 0;    MSG msg;    BOOL gotOne;    // Periodically take a break    do {        gotOne = PeekMessage(&msg, (HWND) NULL, 0, 0, PM_REMOVE);        if (gotOne) {            ++i;#ifdef DEBUG_KEYS            if(WM_KEYDOWN == msg.message) {                STD_PRINT("*** WindowsWindow: DispatchMessages window %p, 0x%X %d/%d/n", msg.hwnd, msg.message, (int)LOWORD(msg.lParam), (int)HIWORD(msg.lParam));            }#endif            TranslateMessage(&msg);            DispatchMessage(&msg);        }    } while (gotOne && i < 100);}
开发者ID:Dahie,项目名称:jogl,代码行数:27,


示例17: switch

void cMainGame::WndProc( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam ){	if(m_pCamera)		m_pCamera->WndProc(hWnd, message, wParam, lParam);	switch (message)	{	case WM_RBUTTONDOWN:		{			m_pStartNode = GetPickedNode(LOWORD(lParam), HIWORD(lParam));		}		break;	case WM_RBUTTONUP:		{			if(m_pStartNode)			{				m_pDestNode = GetPickedNode(LOWORD(lParam), HIWORD(lParam));				if(m_pDestNode)				{					FindPath();				}			}			m_pDestNode = NULL;			m_pStartNode = NULL;		}		break;	case WM_KEYDOWN:		{			static int n = 0;			++n;			m_pSkinnedMesh->SetAnimationIndex(n);		}		break;	case WM_LBUTTONDOWN:		{// 			static int n = 0;// 			++n;// 			m_pSkinnedMesh->SetAnimationIndex(n);// 			// 			ResetAllNode();// 			// 			m_pPickedNode = GetPickedNode(LOWORD(lParam), HIWORD(lParam));// 			if(m_pPickedNode)// 			{// 				m_pPickedNode->SetState(cDijkstraNode::E_SELECTED);// 			}		}		break;	case WM_LBUTTONUP:		{			cDijkstraNode* pNode = GetPickedNode(LOWORD(lParam), HIWORD(lParam));			if(m_pPickedNode && pNode)			{				ST_PC_VERTEX v;				v.c = D3DCOLOR_XRGB(255, 0 ,0);				v.p = m_pPickedNode->GetPosition();				m_vecEdge.push_back(v);				v.p = pNode->GetPosition();				m_vecEdge.push_back(v);				D3DXVECTOR3 vDelta = m_pPickedNode->GetPosition() - pNode->GetPosition();				float l = D3DXVec3Length(&vDelta);				m_vecEdgeCost[m_pPickedNode->GetNodeId()][pNode->GetNodeId()] = l;				m_vecEdgeCost[pNode->GetNodeId()][m_pPickedNode->GetNodeId()] = l;			}			m_pPickedNode = NULL;			ResetAllNode();		}		break;	case WM_MOUSEMOVE:		{			int x = LOWORD(lParam);			int y = HIWORD(lParam);			cRay r = cRay::RayAtWorldSpace(x, y);			for (size_t i = 0; i < m_vecDijkstraNode.size(); ++i)			{				if(m_vecDijkstraNode[i]->GetState() == cDijkstraNode::E_SELECTED)					continue;				if(m_vecDijkstraNode[i]->GetState() == cDijkstraNode::E_PATH)					continue;				if(r.IsPicked(m_vecDijkstraNode[i]->GetPosition(), m_vecDijkstraNode[i]->GetRadius()))				{					m_vecDijkstraNode[i]->SetState(cDijkstraNode::E_MOUSE_OVER);				}				else				{					m_vecDijkstraNode[i]->SetState(cDijkstraNode::E_NORMAL);				}			}		}		break;	}}
开发者ID:gawallsibya,项目名称:SGA_Direct3D,代码行数:100,


示例18: point

void CBacnetOutput::OnNMClickListOutput(NMHDR *pNMHDR, LRESULT *pResult){	 	LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);	// TODO: Add your control notification handler code here	long lRow,lCol;	m_output_list.Set_Edit(true);	DWORD dwPos=GetMessagePos();//Get which line is click by user.Set the check box, when user enter Insert it will jump to program dialog	CPoint point( LOWORD(dwPos), HIWORD(dwPos));	m_output_list.ScreenToClient(&point);	LVHITTESTINFO lvinfo;	lvinfo.pt=point;	lvinfo.flags=LVHT_ABOVE;	int nItem=m_output_list.SubItemHitTest(&lvinfo);	if((nItem!=-1) && (nItem < BAC_OUTPUT_ITEM_COUNT))	{		output_list_line = nItem;		if((m_Output_data.at(output_list_line).sub_id !=0) &&			//(m_Output_data.at(output_list_line).sub_number !=0) &&			(m_Output_data.at(output_list_line).sub_product !=0))		{			unsigned char temp_pid = m_Output_data.at(output_list_line).sub_product;			if((temp_pid == PM_T3PT10) ||				(temp_pid == PM_T3IOA) ||				(temp_pid == PM_T332AI) ||				(temp_pid == PM_T38AI16O) ||				(temp_pid == PM_T38I13O) ||				(temp_pid == PM_T34AO) ||				(temp_pid == PM_T36CT) ||				(temp_pid == PM_T322AI) ||				(temp_pid == PM_T38AI8AO6DO))			{				m_output_item_info.ShowWindow(true);				CString temp_name;				temp_name = GetProductName(m_Output_data.at(output_list_line).sub_product);				CString show_info;				CString temp_id;				CString temp_number;				temp_id.Format(_T(" Sub ID: %u        "),(unsigned char)m_Output_data.at(output_list_line).sub_id);				temp_number.Format(_T("Output%d"),(unsigned char)m_Output_data.at(output_list_line).sub_number+1);				show_info = _T("Module:") + temp_name +_T("        ") + temp_id + temp_number;				m_output_item_info.SetWindowTextW(show_info);			}				else			{				m_output_item_info.ShowWindow(false);			}		}		else		{			m_output_item_info.ShowWindow(false);		}	}	lRow = lvinfo.iItem;	lCol = lvinfo.iSubItem;	if(lRow>= OUTPUT_LIMITE_ITEM_COUNT)		return;	if(lRow>m_output_list.GetItemCount()) //如果点击区超过最大行号,则点击是无效的		return;	if(lRow<0)		return;	CString New_CString;	CString temp_task_info;	CString temp1;	CStringArray temparray;	if(lCol == OUTPUT_VALUE)	{		if(m_Output_data.at(lRow).auto_manual == BAC_AUTO)	//If it is auto mode, disable to change the value.		{			m_output_list.Set_Edit(false);			return;		}		if(m_Output_data.at(lRow).digital_analog != BAC_UNITS_DIGITAL)			return;		memcpy_s(&m_temp_output_data[lRow],sizeof(Str_out_point),&m_Output_data.at(lRow),sizeof(Str_out_point));		if((m_Output_data.at(lRow).range < 23) &&(m_Output_data.at(lRow).range !=0))			temp1 = Digital_Units_Array[m_Output_data.at(lRow).range];		else if((m_Output_data.at(lRow).range >=23) && (m_Output_data.at(lRow).range <= 30))		{			if(receive_customer_unit)				temp1 = temp_unit_no_index[m_Output_data.at(lRow).range - 23];			else//.........这里部分代码省略.........
开发者ID:tuyendothanh,项目名称:T3000_Building_Automation_System,代码行数:101,


示例19: WinProc

LRESULT CALLBACK WinProc(HWND hWnd,UINT uMsg, WPARAM wParam, LPARAM lParam){    LONG    lRet = 0;     PAINTSTRUCT    ps;    switch (uMsg)	{     case WM_SIZE:										// If the window is resized		if(!g_bFullScreen)								// Do this only if we are NOT in full screen		{			SizeOpenGLScreen(LOWORD(lParam),HIWORD(lParam));// LoWord=Width, HiWord=Height			GetClientRect(hWnd, &g_rRect);				// Get the window rectangle		}        break;  	case WM_PAINT:										// If we need to repaint the scene		BeginPaint(hWnd, &ps);							// Init the paint struct				EndPaint(hWnd, &ps);							// EndPaint, Clean up		break;/////// * /////////// * /////////// * NEW * /////// * /////////// * /////////// *	// Below we check what the user types in.  If they use the arrow keys	// then we want to move the triangle around (LEFT RIGHT UP and DOWN keys)	case WM_KEYDOWN:		switch(wParam) 		{			case VK_ESCAPE:								// Check if we hit the ESCAPE key.				PostQuitMessage(0);						// Tell windows we want to quit				break;			case VK_UP:									// Check if we hit the UP ARROW key.				vTriangle[0].x += 0.01f;				// Move the left point of the triangle to the left				vTriangle[1].x += 0.01f;				// Move the right point of the triangle to the left				vTriangle[2].x += 0.01f;				// Move the top point of the triangle to the left				break;			case VK_DOWN:								// Check if we hit the DOWN ARROW key.				vTriangle[0].x -= 0.01f;				// Move the left point of the triangle to the left				vTriangle[1].x -= 0.01f;				// Move the right point of the triangle to the left				vTriangle[2].x -= 0.01f;				// Move the top point of the triangle to the left				break;			case VK_LEFT:								// Check if we hit the LEFT ARROW key.				vTriangle[0].z -= 0.01f;				// Move the left point of the triangle back				vTriangle[1].z -= 0.01f;				// Move the right point of the triangle back				vTriangle[2].z -= 0.01f;				// Move the top point of the triangle back				break;			case VK_RIGHT:								// Check if we hit the RIGHT ARROW key.				vTriangle[0].z += 0.01f;				// Move the left point of the triangle forward				vTriangle[1].z += 0.01f;				// Move the right point of the triangle forward				vTriangle[2].z += 0.01f;				// Move the top point of the triangle forward				break;		}		break;/////// * /////////// * /////////// * NEW * /////// * /////////// * /////////// *     case WM_CLOSE:										// If the window is closed        PostQuitMessage(0);								// Tell windows we want to quit        break;          default:											// Return by default        lRet = DefWindowProc (hWnd, uMsg, wParam, lParam);         break;     }      return lRet;										// Return by default}
开发者ID:Allenjonesing,项目名称:tutorials,代码行数:73,


示例20: WMCommand

long WMCommand (HWND hwnd, WPARAM wParam, LPARAM lParam){  if (LOWORD(wParam) == 1 && HIWORD (wParam) == EN_ERRSPACE)    MessageBox (hwnd, "Edit control out of space.", "Popup Editor", MB_OK | MB_ICONSTOP);  return 0;}
开发者ID:banica,项目名称:educatie,代码行数:6,


示例21: MainWndProc

LRESULT CALLBACK MainWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam){	switch (uMsg) {		case WM_NOTIFY:					return MainNotify(hWnd, (LPNMHDR) lParam);			break;		case WM_CREATE:			MainCreate(hWnd);			break;		case WM_DROPFILES:			MainDropFiles(hWnd, (HDROP) wParam);			break;		case WM_COMMAND: 			MainCommand(hWnd, LOWORD(wParam));					break;		case WM_SIZE:			MainSize(hWnd, LOWORD(lParam), HIWORD(lParam));			break;		case WM_MENUSELECT:			MainMenuSelect(hWnd, LOWORD(wParam), HIWORD(wParam));			break;		case WM_SETFOCUS:			SetFocus(hWndRtf);			break;		case WM_CONTEXTMENU: {				HWND hParam = (HWND) wParam;				HWND hRtfChild = GetDlgItem(hWnd, IDC_Rtf);				if (hParam == hWnd || hParam == hRtfChild)					ShowContextMenu(LOWORD(lParam), HIWORD(lParam));			}			break;		case WM_HELP:					MainCommand(hWnd, ID_HELPCONTENTS);			break;		case WM_CLOSE:			FinalizeWinGHCi();			if (Running)				AbortExecution();			FireAsyncCommand(TEXT(":quit"));			// should not be necessary			SetEvent(hKillGHCi);			PostQuitMessage(0);			break;		default: return DefWindowProc(hWnd, uMsg, wParam, lParam);	}	return 0;}
开发者ID:arcanelab,项目名称:WinGHCi,代码行数:62,


示例22: LOWORD

// ----------------------------------------------------------------------------// Name : MouseMessage()// Desc :// ----------------------------------------------------------------------------WMSG_RESULT CUIPetItemMix::MouseMessage( MSG *pMsg ){	WMSG_RESULT	wmsgResult;	// Title bar	static BOOL bTitleBarClick = FALSE;	// Mouse point	static int	nOldX, nOldY;	int	nX = LOWORD( pMsg->lParam );	int	nY = HIWORD( pMsg->lParam );	// Mouse message	switch( pMsg->message )	{	case WM_MOUSEMOVE:		{			if( IsInside( nX, nY ) )			{				CUIManager::getSingleton()->SetMouseCursorInsideUIs();				int	iRowS = m_sbProcessItem.GetScrollPos();				int	iRowE = iRowS + PROCESS_SLOT_ROW;				if ( m_vecIcons.size() < iRowE )				{					iRowE = m_vecIcons.size();				}								if ( IsInsideRect ( nX, nY, m_rcItem ) )				{					bool bShowItem = false;					for( int iRow = iRowS; iRow < iRowE; iRow++ )					{						m_vecIcons[iRow]->MouseMessage( pMsg );					}				}			}								// Move refine			if( bTitleBarClick && ( pMsg->wParam & MK_LBUTTON ) )			{				int	ndX = nX - nOldX;				int	ndY = nY - nOldY;				nOldX = nX;	nOldY = nY;				Move( ndX, ndY );				return WMSG_SUCCESS;			}			// Close button			else if( m_btnClose.MouseMessage( pMsg ) != WMSG_FAIL )				return WMSG_SUCCESS;			// OK button			else if( m_btnOK[1].MouseMessage( pMsg ) != WMSG_FAIL )  // 
C++ HI_UINT16函数代码示例
C++ HIViewFindByID函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。