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

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

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

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

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

示例1: switch

/***************************************************OnHScroll	The framework calls this member function when the user clicks a window's	horizontal scroll bar.Params:	nSBCode		- please see MSDN for more information on the parameters.	nPos	pScrollBarReturns:	<none>*****************************************************/void CUGHScroll::HScroll(UINT nSBCode, UINT nPos) {	if(GetFocus() != m_ctrl->m_CUGGrid)		m_ctrl->m_CUGGrid->SetFocus();	m_ctrl->m_GI->m_moveType = 4;	switch(nSBCode)	{	case SB_LINEDOWN:		m_ctrl->MoveLeftCol(UG_COLRIGHT);		break;	case SB_LINEUP:		m_ctrl->MoveLeftCol(UG_COLLEFT);		break;	case SB_PAGEUP:		m_ctrl->MoveLeftCol(UG_PAGELEFT);		break;	case SB_PAGEDOWN:		m_ctrl->MoveLeftCol(UG_PAGERIGHT);		break;	case SB_TOP:		m_ctrl->MoveLeftCol(UG_LEFT);		break;	case SB_BOTTOM:		m_ctrl->MoveLeftCol(UG_RIGHT);		break;	case SB_THUMBTRACK:		if(m_GI->m_hScrollMode == UG_SCROLLTRACKING)	//tracking			m_ctrl->SetLeftCol(nPos+m_GI->m_numLockCols);		m_trackColPos = nPos+m_GI->m_numLockCols;		//if enabled then show scroll hints		#ifdef UG_ENABLE_SCROLLHINTS			if(m_GI->m_enableHScrollHints)			{				CString string;				RECT rect;				GetWindowRect(&rect);				rect.left = LOWORD(GetMessagePos());				m_ctrl->ScreenToClient(&rect);				m_ctrl->m_CUGHint->SetWindowAlign(UG_ALIGNCENTER|UG_ALIGNBOTTOM);				m_ctrl->m_CUGHint->SetTextAlign(UG_ALIGNCENTER);				m_ctrl->OnHScrollHint(m_trackColPos,&string);				// set text before move window...				m_ctrl->m_CUGHint->SetText(string,FALSE);				m_ctrl->m_CUGHint->MoveHintWindow(rect.left,rect.top-1,20);				m_ctrl->m_CUGHint->Show();							}		#endif // UG_ENABLE_SCROLLHINTS		break;	case SB_ENDSCROLL:		break;	case SB_THUMBPOSITION:		#ifdef UG_ENABLE_SCROLLHINTS		if(m_GI->m_enableHScrollHints)		{			m_ctrl->m_CUGHint->Hide();						}		#endif		m_ctrl->SetLeftCol(nPos+m_GI->m_numLockCols);		break;	}}
开发者ID:boboding,项目名称:Boboding,代码行数:80,


示例2: GetWindowLong

//.........这里部分代码省略.........		LVCOLUMN		col;		// Attach the class to the window first		cs = ( LPCREATESTRUCT ) lParam;		nav = ( rvGENavigator * ) cs->lpCreateParams;		SetWindowLong( hWnd, GWL_USERDATA, ( LONG )nav );		// Create the List view		nav->mTree = CreateWindowEx( 0, "SysListView32", "", WS_VSCROLL | WS_CHILD | WS_VISIBLE | LVS_REPORT | LVS_OWNERDRAWFIXED | LVS_NOCOLUMNHEADER | LVS_SHOWSELALWAYS, 0, 0, 0, 0, hWnd, ( HMENU )IDC_GUIED_WINDOWTREE, win32.hInstance, 0 );		ListView_SetExtendedListViewStyle( nav->mTree, LVS_EX_FULLROWSELECT );		ListView_SetBkColor( nav->mTree, GetSysColor( COLOR_3DFACE ) );		ListView_SetTextBkColor( nav->mTree, GetSysColor( COLOR_3DFACE ) );		nav->mListWndProc = ( WNDPROC )GetWindowLong( nav->mTree, GWL_WNDPROC );		SetWindowLong( nav->mTree, GWL_USERDATA, ( LONG )nav );		SetWindowLong( nav->mTree, GWL_WNDPROC, ( LONG )ListWndProc );		// Insert the only column		col.mask = 0;		ListView_InsertColumn( nav->mTree, 0, &col );		break;	}	case WM_SIZE: {		RECT rClient;		MoveWindow( nav->mTree, 0, 0, LOWORD( lParam ), HIWORD( lParam ), TRUE );		GetClientRect( nav->mTree, &rClient );		ListView_SetColumnWidth( nav->mTree, 0, rClient.right - rClient.left - 1 );		break;	}	case WM_NCACTIVATE:		return gApp.ToolWindowActivate( gApp.GetMDIFrame(), msg, wParam, lParam );	case WM_NOTIFY: {		LPNMHDR nh;		nh = ( LPNMHDR ) lParam;		switch( nh->code ) {		case NM_CLICK:		case NM_DBLCLK: {			DWORD dwpos = GetMessagePos();			LVHITTESTINFO info;			info.pt.x = LOWORD( dwpos );			info.pt.y = HIWORD( dwpos );			MapWindowPoints( HWND_DESKTOP, nh->hwndFrom, &info.pt, 1 );			int index = ListView_HitTest( nav->mTree, &info );			if( index != -1 ) {				RECT	rItem;				int		offset;				ListView_GetItemRect( nav->mTree, index, &rItem, LVIR_BOUNDS );				LVITEM item;				item.mask = LVIF_PARAM;				item.iItem = index;				ListView_GetItem( nav->mTree, &item );				idWindow *window = ( idWindow * )item.lParam;				rvGEWindowWrapper *wrapper = rvGEWindowWrapper::GetWrapper( window );				offset = wrapper->GetDepth( ) * 10 + 1;				if( info.pt.x < GENAV_ITEMHEIGHT ) {					if( !rvGEWindowWrapper::GetWrapper( window )->IsHidden( ) ) {						nav->mWorkspace->HideWindow( window );					} else {						nav->mWorkspace->UnhideWindow( window );					}				} else if( info.pt.x > GENAV_ITEMHEIGHT + offset && info.pt.x < GENAV_ITEMHEIGHT + offset + 16 ) {					if( wrapper->CanHaveChildren( ) && window->GetChildCount( ) ) {						if( wrapper->IsExpanded( ) ) {							wrapper->Collapse( );							nav->Update( );						} else {							wrapper->Expand( );							nav->Update( );						}					}
开发者ID:SL987654,项目名称:The-Darkmod-Experimental,代码行数:67,


示例3: switch

//.........这里部分代码省略.........		HTREEITEM treeitem = NULL;		TVHITTESTINFO ti;		memset(&ti, 0, sizeof(ti));		if (pt.x != -1 && pt.y != -1)		{			ti.pt = pt;			ScreenToClient(list, &ti.pt);			uSendMessage(list, TVM_HITTEST, 0, (long)&ti);			if (ti.hItem && (ti.flags & TVHT_ONITEM))			{				//FIX THIS AND AUTOSEND				//TreeView_Select(list, ti.hItem, TVGN_DROPHILITE);				//uSendMessage(list,TVM_SELECTITEM,TVGN_DROPHILITE,(long)ti.hItem);				treeitem = ti.hItem;			}		}		else		{			treeitem = TreeView_GetSelection(list);			RECT rc;			if (treeitem && TreeView_GetItemRect(wnd_tv, treeitem, &rc, TRUE))			{				MapWindowPoints(wnd_tv, HWND_DESKTOP, (LPPOINT)&rc, 2);				pt.x = rc.left;				pt.y = rc.top + (rc.bottom - rc.top) / 2;			}			else			{				GetMessagePos(&pt);			}		}		TreeView_Select(list, treeitem, TVGN_DROPHILITE);		HMENU menu_view = CreatePopupMenu();		unsigned n, m = cfg_view_list.get_count();		string8_fastalloc temp;		temp.prealloc(32);		uAppendMenu(menu_view, MF_STRING | (!stricmp_utf8(directory_structure_view_name, view) ? MF_CHECKED : 0), ID_VIEW_BASE + 0, directory_structure_view_name);		list_t<string_simple, pfc::alloc_fast> views;		views.add_item(string_simple(directory_structure_view_name));		for (n = 0; n<m; n++)		{			temp = cfg_view_list.get_name(n);			string_simple item(temp.get_ptr());			if (item)			{				uAppendMenu(menu_view, MF_STRING | (!stricmp_utf8(temp, view) ? MF_CHECKED : 0), ID_VIEW_BASE + views.add_item(item), temp);			}		}		IDM_MANAGER_BASE = ID_VIEW_BASE + views.get_count();		uAppendMenu(menu, MF_STRING | MF_POPUP, (UINT)menu_view, "View");
开发者ID:ASopH,项目名称:columns_ui,代码行数:67,


示例4: AudioDlgProc

INT_PTR CALLBACKAudioDlgProc (HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam){  switch (uMsg) {      case WM_COMMAND:	switch (LOWORD(wParam)) {          case IDC_AUDIO_CONFIGURE:	     configureAudioDriver(hDlg);	     break;          case IDC_AUDIO_TEST:	     if(!PlaySound(MAKEINTRESOURCE(IDW_TESTSOUND), NULL, SND_RESOURCE | SND_SYNC))                MessageBox(NULL, "Audio test failed!", "Error", MB_OK | MB_ICONERROR);             break;          case IDC_AUDIO_CONTROL_PANEL:	     MessageBox(NULL, "Launching audio control panel not implemented yet!", "Fixme", MB_OK | MB_ICONERROR);             break;          case IDC_DSOUND_HW_ACCEL:	    if (HIWORD(wParam) == CBN_SELCHANGE) {	      int selected_dsound_accel;              int i, j = 0;	      SendMessage(GetParent(hDlg), PSM_CHANGED, 0, 0);	      selected_dsound_accel = SendDlgItemMessage(hDlg, IDC_DSOUND_HW_ACCEL, CB_GETCURSEL, 0, 0);              for (i = 0; DSound_HW_Accels[i].settingStr; ++i)              {                if (DSound_HW_Accels[i].visible)                {                  if (j == selected_dsound_accel)                  {                    set_reg_key(config_key, keypath("DirectSound"), "HardwareAcceleration",                      DSound_HW_Accels[i].settingStr);                    break;                  }                  j++;                }              }	    }	    break;          case IDC_DSOUND_RATES:	    if (HIWORD(wParam) == CBN_SELCHANGE) {	      int selected_dsound_rate;	      SendMessage(GetParent(hDlg), PSM_CHANGED, 0, 0);	      selected_dsound_rate = SendDlgItemMessage(hDlg, IDC_DSOUND_RATES, CB_GETCURSEL, 0, 0);	      set_reg_key(config_key, keypath("DirectSound"), "DefaultSampleRate", DSound_Rates[selected_dsound_rate]);	    }	    break;          case IDC_DSOUND_BITS:	    if (HIWORD(wParam) == CBN_SELCHANGE) {	      int selected_dsound_bits;	      SendMessage(GetParent(hDlg), PSM_CHANGED, 0, 0);	      selected_dsound_bits = SendDlgItemMessage(hDlg, IDC_DSOUND_BITS, CB_GETCURSEL, 0, 0);	      set_reg_key(config_key, keypath("DirectSound"), "DefaultBitsPerSample", DSound_Bits[selected_dsound_bits]);	    }	    break;	}	break;      case WM_SHOWWINDOW:        set_window_title(hDlg);        break;      case WM_NOTIFY:	switch(((LPNMHDR)lParam)->code) {	    case PSN_KILLACTIVE:	      SetWindowLongPtr(hDlg, DWLP_MSGRESULT, FALSE);	      break;	    case PSN_APPLY:	      set_reg_key(config_key, "Drivers", "Audio", curAudioDriver);              apply();	      SetWindowLongPtr(hDlg, DWLP_MSGRESULT, PSNRET_NOERROR);	      break;	    case PSN_SETACTIVE:	      break;            case NM_CLICK:              if (((LPNMHDR)lParam)->idFrom == IDC_AUDIO_TREE)              {                  TVHITTESTINFO ht;                  DWORD dwPos = GetMessagePos();                  HWND tree = ((LPNMHDR)lParam)->hwndFrom;                  ZeroMemory(&ht, sizeof(ht));                  ht.pt.x = (short)LOWORD(dwPos);                  ht.pt.y = (short)HIWORD(dwPos);                  MapWindowPoints(HWND_DESKTOP, tree, &ht.pt, 1);                  SendMessageW( tree, TVM_HITTEST, 0, (LPARAM)&ht );                  if (TVHT_ONITEMSTATEICON & ht.flags)                  {                      TVITEM tvItem;                      int index;                      ZeroMemory(&tvItem, sizeof(tvItem));                      tvItem.hItem = ht.hItem;                      SendMessageW( tree, TVM_GETITEMW, 0, (LPARAM) &tvItem );                      index = TreeView_GetItemState(tree, ht.hItem, TVIS_STATEIMAGEMASK);                      if (index == INDEXTOSTATEIMAGEMASK(1))                      {                          TreeView_SetItemState(tree, ht.hItem, INDEXTOSTATEIMAGEMASK(2), TVIS_STATEIMAGEMASK);                          addDriver(loadedAudioDrv[tvItem.lParam & 0xff].szDriver);                          SendMessage(GetParent(hDlg), PSM_CHANGED, (WPARAM) hDlg, 0); /* enable apply button */                      }                      else if (index == INDEXTOSTATEIMAGEMASK(2))//.........这里部分代码省略.........
开发者ID:bilboed,项目名称:wine,代码行数:101,


示例5: GetSystemInfo

/*** Win32 poll using stats functions including Tooltip32*/void Win32_EntropySource::poll(Entropy_Accumulator& accum)   {   /*   First query a bunch of basic statistical stuff, though   don't count it for much in terms of contributed entropy.   */   accum.add(GetTickCount(), 0);   accum.add(GetMessagePos(), 0);   accum.add(GetMessageTime(), 0);   accum.add(GetInputState(), 0);   accum.add(GetCurrentProcessId(), 0);   accum.add(GetCurrentThreadId(), 0);   SYSTEM_INFO sys_info;   GetSystemInfo(&sys_info);   accum.add(sys_info, 1);   MEMORYSTATUS mem_info;   GlobalMemoryStatus(&mem_info);   accum.add(mem_info, 1);   POINT point;   GetCursorPos(&point);   accum.add(point, 1);   GetCaretPos(&point);   accum.add(point, 1);   LARGE_INTEGER perf_counter;   QueryPerformanceCounter(&perf_counter);   accum.add(perf_counter, 0);   /*   Now use the Tooltip library to iterate throug various objects on   the system, including processes, threads, and heap objects.   */   HANDLE snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPALL, 0);#define TOOLHELP32_ITER(DATA_TYPE, FUNC_FIRST, FUNC_NEXT) /   if(!accum.polling_finished())                     /      {                                                   /      DATA_TYPE info;                                     /      info.dwSize = sizeof(DATA_TYPE);                    /      if(FUNC_FIRST(snapshot, &info))                     /         {                                                /         do                                               /            {                                             /            accum.add(info, 1);                           /            } while(FUNC_NEXT(snapshot, &info));          /         }                                                /      }   TOOLHELP32_ITER(MODULEENTRY32, Module32First, Module32Next);   TOOLHELP32_ITER(PROCESSENTRY32, Process32First, Process32Next);   TOOLHELP32_ITER(THREADENTRY32, Thread32First, Thread32Next);#undef TOOLHELP32_ITER   if(!accum.polling_finished())      {      size_t heap_lists_found = 0;      HEAPLIST32 heap_list;      heap_list.dwSize = sizeof(HEAPLIST32);      const size_t HEAP_LISTS_MAX = 32;      const size_t HEAP_OBJS_PER_LIST = 128;      if(Heap32ListFirst(snapshot, &heap_list))         {         do            {            accum.add(heap_list, 1);            if(++heap_lists_found > HEAP_LISTS_MAX)               break;            size_t heap_objs_found = 0;            HEAPENTRY32 heap_entry;            heap_entry.dwSize = sizeof(HEAPENTRY32);            if(Heap32First(&heap_entry, heap_list.th32ProcessID,                           heap_list.th32HeapID))               {               do                  {                  if(heap_objs_found++ > HEAP_OBJS_PER_LIST)                     break;                  accum.add(heap_entry, 1);                  } while(Heap32Next(&heap_entry));               }            if(accum.polling_finished())               break;            } while(Heap32ListNext(snapshot, &heap_list));         }      }//.........这里部分代码省略.........
开发者ID:AlexNk,项目名称:botan,代码行数:101,


示例6: moduleListRightClick

void moduleListRightClick(HWND hwnd, WPARAM wParam, LPARAM lParam) // hwnd here is to the main window, NOT the treview{	TVHITTESTINFO hti;	hti.pt.x = (short)LOWORD(GetMessagePos());	hti.pt.y = (short)HIWORD(GetMessagePos());	ScreenToClient(((LPNMHDR)lParam)->hwndFrom, &hti.pt);	if (TreeView_HitTest(((LPNMHDR)lParam)->hwndFrom, &hti)) {		if (hti.flags & TVHT_ONITEM) {			TVITEM tvi = {0};			HMENU hMenu, hSubMenu;			int menuNumber;			char module[256];			tvi.mask = TVIF_HANDLE | TVIF_PARAM | TVIF_TEXT;			tvi.hItem = hti.hItem;			tvi.pszText = module;			tvi.cchTextMax = 255;			TreeView_GetItem(((LPNMHDR)lParam)->hwndFrom, &tvi);			if (tvi.lParam) {				ModuleTreeInfoStruct *mtis = (ModuleTreeInfoStruct *)tvi.lParam;				MCONTACT hContact = mtis->hContact;				GetCursorPos(&hti.pt);				hMenu = LoadMenu(hInst, MAKEINTRESOURCE(IDR_CONTEXTMENU));				TranslateMenu(hMenu);				if (mtis->type == CONTACT && hContact)					menuNumber = 2;				else if ((mtis->type == MODULE) && !hContact)					menuNumber = 1;				else if (mtis->type == CONTACT && !hContact)					menuNumber = 3;				else if (mtis->type == CONTACT_ROOT_ITEM && !hContact)					menuNumber = 4;				else if ((mtis->type == MODULE) && hContact)					menuNumber = 5;				else return;				hSubMenu = GetSubMenu(hMenu, menuNumber);				TranslateMenu(hSubMenu);				switch (menuNumber) {				case 1: // null module				case 5: // contact module					{						// check if we r already watching the module						int i, watching = 0;						// check if the setting is being watched and if it is then check the menu item						if (WatchListArray.item)							for (i = 0; i < WatchListArray.count; i++)								if (WatchListArray.item[i].module && (hContact == WatchListArray.item[i].hContact)) {									if (!mir_strcmp(module, WatchListArray.item[i].module) && !WatchListArray.item[i].setting) {										// yes so uncheck it										CheckMenuItem(hSubMenu, MENU_WATCH_ITEM, MF_CHECKED | MF_BYCOMMAND);										watching = 1;										break;									}								}						switch (TrackPopupMenu(hSubMenu, TPM_RETURNCMD, hti.pt.x, hti.pt.y, 0, hwnd, NULL)) {						case MENU_RENAME_MOD:							TreeView_EditLabel(GetDlgItem(hwnd, IDC_MODULES), tvi.hItem);							break;						case MENU_DELETE_MOD:							if (deleteModule(module, hContact, 0)) {								TreeView_DeleteItem(((LPNMHDR)lParam)->hwndFrom, hti.hItem);								mir_free(mtis);							}							break;						case MENU_COPY_MOD:							copyModuleMenuItem(module, hContact);							break;							////////////////////////////////////////////////////////////////////// divider						case MENU_WATCH_ITEM:							if (!watching)								addSettingToWatchList(hContact, module, 0);							else								freeWatchListItem(i);							if (hwnd2watchedVarsWindow)								PopulateWatchedWindow(GetDlgItem(hwnd2watchedVarsWindow, IDC_VARS));							break;						case MENU_EXPORTMODULE:							exportDB(hContact, module);							break;						case MENU_EXPORTDB:							exportDB(INVALID_CONTACT_ID, module);							break;						}					}					break;				case 2: // contact					switch (TrackPopupMenu(hSubMenu, TPM_RETURNCMD, hti.pt.x, hti.pt.y, 0, hwnd, NULL)) {					case MENU_CLONE_CONTACT:						if (CloneContact(hContact))							refreshTree(1);						break;//.........这里部分代码省略.........
开发者ID:0xmono,项目名称:miranda-ng,代码行数:101,


示例7: FastPoll

/* This is the fastpoll function which gathers up info by calling various api's */BOOL FastPoll (void){	int nOriginalRandIndex = nRandIndex;	static BOOL addedFixedItems = FALSE;	FILETIME creationTime, exitTime, kernelTime, userTime;	DWORD minimumWorkingSetSize, maximumWorkingSetSize;	LARGE_INTEGER performanceCount;	MEMORYSTATUS memoryStatus;	HANDLE handle;	POINT point;	/* Get various basic pieces of system information */	RandaddInt32 (GetActiveWindow ());	/* Handle of active window */	RandaddInt32 (GetCapture ());	/* Handle of window with mouse					   capture */	RandaddInt32 (GetClipboardOwner ());	/* Handle of clipboard owner */	RandaddInt32 (GetClipboardViewer ());	/* Handle of start of						   clpbd.viewer list */	RandaddInt32 (GetCurrentProcess ());	/* Pseudohandle of current						   process */	RandaddInt32 (GetCurrentProcessId ());	/* Current process ID */	RandaddInt32 (GetCurrentThread ());	/* Pseudohandle of current						   thread */	RandaddInt32 (GetCurrentThreadId ());	/* Current thread ID */	RandaddInt32 (GetCurrentTime ());	/* Milliseconds since Windows						   started */	RandaddInt32 (GetDesktopWindow ());	/* Handle of desktop window */	RandaddInt32 (GetFocus ());	/* Handle of window with kb.focus */	RandaddInt32 (GetInputState ());	/* Whether sys.queue has any events */	RandaddInt32 (GetMessagePos ());	/* Cursor pos.for last message */	RandaddInt32 (GetMessageTime ());	/* 1 ms time for last message */	RandaddInt32 (GetOpenClipboardWindow ());	/* Handle of window with							   clpbd.open */	RandaddInt32 (GetProcessHeap ());	/* Handle of process heap */	RandaddInt32 (GetProcessWindowStation ());	/* Handle of procs							   window station */	RandaddInt32 (GetQueueStatus (QS_ALLEVENTS));	/* Types of events in							   input queue */	/* Get multiword system information */	GetCaretPos (&point);	/* Current caret position */	RandaddBuf ((unsigned char *) &point, sizeof (POINT));	GetCursorPos (&point);	/* Current mouse cursor position */	RandaddBuf ((unsigned char *) &point, sizeof (POINT));	/* Get percent of memory in use, bytes of physical memory, bytes of	   free physical memory, bytes in paging file, free bytes in paging	   file, user bytes of address space, and free user bytes */	memoryStatus.dwLength = sizeof (MEMORYSTATUS);	GlobalMemoryStatus (&memoryStatus);	RandaddBuf ((unsigned char *) &memoryStatus, sizeof (MEMORYSTATUS));	/* Get thread and process creation time, exit time, time in kernel	   mode, and time in user mode in 100ns intervals */	handle = GetCurrentThread ();	GetThreadTimes (handle, &creationTime, &exitTime, &kernelTime, &userTime);	RandaddBuf ((unsigned char *) &creationTime, sizeof (FILETIME));	RandaddBuf ((unsigned char *) &exitTime, sizeof (FILETIME));	RandaddBuf ((unsigned char *) &kernelTime, sizeof (FILETIME));	RandaddBuf ((unsigned char *) &userTime, sizeof (FILETIME));	handle = GetCurrentProcess ();	GetProcessTimes (handle, &creationTime, &exitTime, &kernelTime, &userTime);	RandaddBuf ((unsigned char *) &creationTime, sizeof (FILETIME));	RandaddBuf ((unsigned char *) &exitTime, sizeof (FILETIME));	RandaddBuf ((unsigned char *) &kernelTime, sizeof (FILETIME));	RandaddBuf ((unsigned char *) &userTime, sizeof (FILETIME));	/* Get the minimum and maximum working set size for the current	   process */	GetProcessWorkingSetSize (handle, &minimumWorkingSetSize,				  &maximumWorkingSetSize);	RandaddInt32 (minimumWorkingSetSize);	RandaddInt32 (maximumWorkingSetSize);	/* The following are fixed for the lifetime of the process so we only	   add them once */	if (addedFixedItems == 0)	{		STARTUPINFO startupInfo;		/* Get name of desktop, console window title, new window		   position and size, window flags, and handles for stdin,		   stdout, and stderr */		startupInfo.cb = sizeof (STARTUPINFO);		GetStartupInfo (&startupInfo);		RandaddBuf ((unsigned char *) &startupInfo, sizeof (STARTUPINFO));		addedFixedItems = TRUE;	}	/* The docs say QPC can fail if appropriate hardware is not	   available. It works on 486 & Pentium boxes, but hasn't been tested	   for 386 or RISC boxes */	if (QueryPerformanceCounter (&performanceCount))		RandaddBuf ((unsigned char *) &performanceCount, sizeof (LARGE_INTEGER));	else	{		/* Millisecond accuracy at best... */		DWORD dwTicks = GetTickCount ();		RandaddBuf ((unsigned char *) &dwTicks, sizeof (dwTicks));	}//.........这里部分代码省略.........
开发者ID:Rafiot,项目名称:GostCrypt-Win7,代码行数:101,


示例8: JabberMucJidListDlgProc

//.........这里部分代码省略.........					switch ( nm->nmcd.dwDrawStage ) {					case CDDS_PREPAINT:					case CDDS_ITEMPREPAINT:						SetWindowLongPtr( hwndDlg, DWLP_MSGRESULT, CDRF_NOTIFYSUBITEMDRAW );						return TRUE;					case CDDS_SUBITEM|CDDS_ITEMPREPAINT:						{							RECT rc;							HICON hIcon;							ListView_GetSubItemRect( nm->nmcd.hdr.hwndFrom, nm->nmcd.dwItemSpec, nm->iSubItem, LVIR_LABEL, &rc );							if ( nm->iSubItem == 1 ) {								if( nm->nmcd.lItemlParam == ( LPARAM )( -1 ))									hIcon = ( HICON )LoadImage( hInst, MAKEINTRESOURCE( IDI_ADDCONTACT ), IMAGE_ICON, GetSystemMetrics( SM_CXSMICON ), GetSystemMetrics( SM_CYSMICON ), 0 );								else									hIcon = ( HICON )LoadImage( hInst, MAKEINTRESOURCE( IDI_DELETE ), IMAGE_ICON, GetSystemMetrics( SM_CXSMICON ), GetSystemMetrics( SM_CYSMICON ), 0 );								DrawIconEx( nm->nmcd.hdc, ( rc.left+rc.right-GetSystemMetrics( SM_CXSMICON ))/2, ( rc.top+rc.bottom-GetSystemMetrics( SM_CYSMICON ))/2,hIcon, GetSystemMetrics( SM_CXSMICON ), GetSystemMetrics( SM_CYSMICON ), 0, GetSysColorBrush(COLOR_WINDOW), DI_NORMAL );								DestroyIcon( hIcon );								SetWindowLongPtr( hwndDlg, DWLP_MSGRESULT, CDRF_SKIPDEFAULT );								return TRUE;				}	}	}	}				break;			case NM_CLICK:				{					NMLISTVIEW *nm = ( NMLISTVIEW * ) lParam;					LVITEM lvi;					LVHITTESTINFO hti;					TCHAR text[128];					if ( nm->iSubItem < 1 )						break;					hti.pt.x = ( short ) LOWORD( GetMessagePos());					hti.pt.y = ( short ) HIWORD( GetMessagePos());					ScreenToClient( nm->hdr.hwndFrom, &hti.pt );					if ( ListView_SubItemHitTest( nm->hdr.hwndFrom, &hti ) == -1 )						break;					if ( hti.iSubItem != 1 )						break;					lvi.mask = LVIF_PARAM | LVIF_TEXT;					lvi.iItem = hti.iItem;					lvi.iSubItem = 0;					lvi.pszText = text;					lvi.cchTextMax = sizeof( text );					ListView_GetItem( nm->hdr.hwndFrom, &lvi );					if ( lvi.lParam == ( LPARAM )( -1 )) {						TCHAR szBuffer[ 1024 ];						_tcscpy( szBuffer, dat->type2str());						if ( !dat->ppro->EnterString(szBuffer, SIZEOF(szBuffer), NULL, JES_COMBO, "gcAddNick_"))							break;						// Trim leading and trailing whitespaces						TCHAR *p = szBuffer, *q;						for ( p = szBuffer; *p!='/0' && isspace( BYTE( *p )); p++);						for ( q = p; *q!='/0' && !isspace( BYTE( *q )); q++);						if (*q != '/0') *q = '/0';						if (*p == '/0')							break;						TCHAR rsn[ 1024 ];						_tcscpy( rsn, dat->type2str());						if ( dat->type == MUC_BANLIST ) {							dat->ppro->EnterString(rsn, SIZEOF(rsn), TranslateT("Reason to ban") , JES_COMBO, "gcAddReason_");							if ( szBuffer )
开发者ID:raoergsls,项目名称:miranda,代码行数:67,


示例9: switch

//.........这里部分代码省略.........		case IDC_ADDCATEGORY:			if (HIWORD(wParam) == BN_CLICKED)			{				AddCategory();			}			break;		case IDC_DELETECATEGORY:			if (HIWORD(wParam) == BN_CLICKED)			{				if (tmpsmcat.DeleteCustomCategory(GetSelProto()))				{					PopulateSmPackList();					SetChanged();				}			}			break;		case IDC_SPACES:		case IDC_SCALETOTEXTHEIGHT:		case IDC_APPENDSPACES:		case IDC_SMLBUT:		case IDC_SCALEALLSMILEYS:		case IDC_IEVIEWSTYLE:		case IDC_ANIMATESEL:		case IDC_ANIMATEDLG:		case IDC_INPUTSMILEYS:		case IDC_DCURSORSMILEY:		case IDC_DISABLECUSTOM:		case IDC_HQSCALING:			if (HIWORD(wParam) == BN_CLICKED) SetChanged();			break;		case IDC_SELCLR:			if (HIWORD(wParam) == CPN_COLOURCHANGED) SetChanged();			break;		case IDC_MAXCUSTSMSZ:		case IDC_MINSMSZ:			if (HIWORD(wParam) == EN_CHANGE && GetFocus() == (HWND)lParam) SetChanged();			break;		}		break;	case UM_CHECKSTATECHANGE:		UserAction((HTREEITEM)lParam);		break;	case WM_NOTIFY:		switch(((LPNMHDR)lParam)->idFrom)		{		case 0:			switch (((LPNMHDR)lParam)->code)			{			case PSN_APPLY:				ApplyChanges();				break;			}			break;		case IDC_CATEGORYLIST:			switch (((LPNMHDR)lParam)->code)			{			case NM_CLICK:				{					TVHITTESTINFO ht = {0};					DWORD dwpos = GetMessagePos();					POINTSTOPOINT(ht.pt, MAKEPOINTS(dwpos));					MapWindowPoints(HWND_DESKTOP, ((LPNMHDR)lParam)->hwndFrom, &ht.pt, 1);					TreeView_HitTest(((LPNMHDR)lParam)->hwndFrom, &ht);					if (TVHT_ONITEM & ht.flags)						FilenameChanged();					if (TVHT_ONITEMSTATEICON & ht.flags)						PostMessage(m_hwndDialog, UM_CHECKSTATECHANGE, 0, (LPARAM)ht.hItem);				}			case TVN_KEYDOWN:				if (((LPNMTVKEYDOWN) lParam)->wVKey == VK_SPACE)					PostMessage(m_hwndDialog, UM_CHECKSTATECHANGE, 0, 					(LPARAM)TreeView_GetSelection(((LPNMHDR)lParam)->hwndFrom));				break;			case TVN_SELCHANGEDA:			case TVN_SELCHANGEDW:				{					LPNMTREEVIEW pnmtv = (LPNMTREEVIEW) lParam;					if (pnmtv->itemNew.state & TVIS_SELECTED)						UpdateControls();				}				break;			}			break;		}		break;	}	return Result;}
开发者ID:TonyAlloa,项目名称:miranda-dev,代码行数:101,


示例10: SysLinkWindowProc

/*********************************************************************** *           SysLinkWindowProc */static LRESULT WINAPI SysLinkWindowProc(HWND hwnd, UINT message,                                        WPARAM wParam, LPARAM lParam){    SYSLINK_INFO *infoPtr;    TRACE("hwnd=%p msg=%04x wparam=%lx lParam=%lx/n", hwnd, message, wParam, lParam);    infoPtr = (SYSLINK_INFO *)GetWindowLongPtrW(hwnd, 0);    if (!infoPtr && message != WM_CREATE)        return DefWindowProcW(hwnd, message, wParam, lParam);    switch(message) {    case WM_PRINTCLIENT:    case WM_PAINT:        return SYSLINK_Paint (infoPtr, (HDC)wParam);    case WM_ERASEBKGND:        return 0;    case WM_SETCURSOR:    {        LHITTESTINFO ht;        DWORD mp = GetMessagePos();                ht.pt.x = (short)LOWORD(mp);        ht.pt.y = (short)HIWORD(mp);                ScreenToClient(infoPtr->Self, &ht.pt);        if(SYSLINK_HitTest (infoPtr, &ht))        {            SetCursor(LoadCursorW(0, (LPCWSTR)IDC_HAND));            return TRUE;        }        return DefWindowProcW(hwnd, message, wParam, lParam);    }    case WM_SIZE:    {        RECT rcClient;        if (GetClientRect(infoPtr->Self, &rcClient))        {            HDC hdc = GetDC(infoPtr->Self);            if(hdc != NULL)            {                SYSLINK_Render(infoPtr, hdc, &rcClient);                ReleaseDC(infoPtr->Self, hdc);            }        }        return 0;    }    case WM_GETFONT:        return (LRESULT)infoPtr->Font;    case WM_SETFONT:        return (LRESULT)SYSLINK_SetFont(infoPtr, (HFONT)wParam, (BOOL)lParam);    case WM_SETTEXT:        SYSLINK_SetText(infoPtr, (LPWSTR)lParam);        return DefWindowProcW(hwnd, message, wParam, lParam);    case WM_LBUTTONDOWN:    {        POINT pt;        pt.x = (short)LOWORD(lParam);        pt.y = (short)HIWORD(lParam);        return SYSLINK_LButtonDown(infoPtr, &pt);    }    case WM_LBUTTONUP:    {        POINT pt;        pt.x = (short)LOWORD(lParam);        pt.y = (short)HIWORD(lParam);        return SYSLINK_LButtonUp(infoPtr, &pt);    }        case WM_KEYDOWN:    {        switch(wParam)        {        case VK_RETURN:            SYSLINK_OnEnter(infoPtr);            return 0;        case VK_TAB:        {            BOOL shift = GetKeyState(VK_SHIFT) & 0x8000;            SYSKEY_SelectNextPrevLink(infoPtr, shift);            return 0;        }        default:            return DefWindowProcW(hwnd, message, wParam, lParam);        }    }        case WM_GETDLGCODE://.........这里部分代码省略.........
开发者ID:bpon,项目名称:wine,代码行数:101,


示例11: GetMessagePos

void CFilePatchesDlg::OnNMRclickFilelist(NMHDR * /*pNMHDR*/, LRESULT *pResult){	*pResult = 0;	if (m_sPath.IsEmpty())		return;	CString temp;	CMenu popup;	POINT point;	DWORD ptW = GetMessagePos();	point.x = GET_X_LPARAM(ptW);	point.y = GET_Y_LPARAM(ptW);	if (!popup.CreatePopupMenu())		return;	UINT nFlags = MF_STRING | (m_cFileList.GetSelectedCount()==1 ? MF_ENABLED : MF_DISABLED | MF_GRAYED);	temp.LoadString(IDS_PATCH_PREVIEW);	popup.AppendMenu(nFlags, ID_PATCHPREVIEW, temp);	popup.SetDefaultItem(ID_PATCHPREVIEW, FALSE);	temp.LoadString(IDS_PATCH_ALL);	popup.AppendMenu(MF_STRING | MF_ENABLED, ID_PATCHALL, temp);	nFlags = MF_STRING | (m_cFileList.GetSelectedCount() > 0 ? MF_ENABLED : MF_DISABLED | MF_GRAYED);	temp.LoadString(IDS_PATCH_SELECTED);	popup.AppendMenu(nFlags, ID_PATCHSELECTED, temp);	// if the context menu is invoked through the keyboard, we have to use	// a calculated position on where to anchor the menu on	if ((point.x == -1) && (point.y == -1))	{		CRect rect;		GetWindowRect(&rect);		point = rect.CenterPoint();	}	int cmd = popup.TrackPopupMenu(TPM_RETURNCMD | TPM_LEFTALIGN | TPM_NONOTIFY | TPM_RIGHTBUTTON, point.x, point.y, this, 0);	switch (cmd)	{	case ID_PATCHPREVIEW:		if (m_pCallBack)		{			int nIndex = m_cFileList.GetSelectionMark();			if (m_arFileStates.GetAt(nIndex) == FPDLG_FILESTATE_ERROR)			{				MessageBox(m_pPatch->GetPatchRejects(nIndex), NULL, MB_ICONERROR);			}			else if ( m_arFileStates.GetAt(nIndex)!=FPDLG_FILESTATE_PATCHED)			{				m_pCallBack->PatchFile(m_pPatch->GetStrippedPath(nIndex), m_pPatch->GetContentMods(nIndex), m_pPatch->GetPropMods(nIndex), _T(""));				m_ShownIndex = nIndex;				m_cFileList.Invalidate();			}		}		break;	case ID_PATCHALL:		PatchAll();		break;	case ID_PATCHSELECTED:		PatchSelected();		break;	default:		break;	}}
开发者ID:3F,项目名称:tortoisegit-mdc,代码行数:64,


示例12: GenMenuOpts

//.........这里部分代码省略.........				TVITEM tvi;				HTREEITEM hti;				hti=TreeView_GetSelection(GetDlgItem(hwndDlg,IDC_MENUOBJECTS));				if (hti==NULL)					break;				tvi.mask=TVIF_HANDLE|TVIF_IMAGE|TVIF_SELECTEDIMAGE|TVIF_PARAM;				tvi.hItem=hti;				TreeView_GetItem(GetDlgItem(hwndDlg,IDC_MENUOBJECTS),&tvi);				BuildTree(hwndDlg,(int)tvi.lParam);			}			break;		case IDC_MENUITEMS:			switch (((LPNMHDR)lParam)->code) {			case NM_CUSTOMDRAW:				{					int i= handleCustomDraw(GetDlgItem(hwndDlg,IDC_MENUITEMS),(LPNMTVCUSTOMDRAW) lParam);					SetWindowLong(hwndDlg, DWL_MSGRESULT, i); 					return TRUE;				}			case TVN_BEGINDRAGA:				SetCapture(hwndDlg);				dat->dragging=1;				dat->hDragItem=((LPNMTREEVIEW)lParam)->itemNew.hItem;				TreeView_SelectItem(GetDlgItem(hwndDlg,IDC_MENUITEMS),dat->hDragItem);				//ShowWindow(GetDlgItem(hwndDlg,IDC_BUTTONORDERTREEWARNING),SW_SHOW);				break;			case NM_CLICK:				{					TVHITTESTINFO hti;					hti.pt.x=(short)LOWORD(GetMessagePos());					hti.pt.y=(short)HIWORD(GetMessagePos());					ScreenToClient(((LPNMHDR)lParam)->hwndFrom,&hti.pt);					if (TreeView_HitTest(((LPNMHDR)lParam)->hwndFrom,&hti)) {						if (hti.flags&TVHT_ONITEMICON) {							TVITEM tvi;							tvi.mask=TVIF_HANDLE|TVIF_IMAGE|TVIF_SELECTEDIMAGE|TVIF_PARAM;							tvi.hItem=hti.hItem;							TreeView_GetItem(((LPNMHDR)lParam)->hwndFrom,&tvi);							tvi.iImage=tvi.iSelectedImage=!tvi.iImage;							((MenuItemOptData *)tvi.lParam)->show=tvi.iImage;							TreeView_SetItem(((LPNMHDR)lParam)->hwndFrom,&tvi);							SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);							//all changes take effect in runtime							//ShowWindow(GetDlgItem(hwndDlg,IDC_BUTTONORDERTREEWARNING),SW_SHOW);						}						/*--------MultiSelection----------*/						if (hti.flags&TVHT_ONITEMLABEL) {							/// LabelClicked Set/unset selection							TVITEM tvi;							HWND tvw=((LPNMHDR)lParam)->hwndFrom;							tvi.mask=TVIF_HANDLE|TVIF_PARAM;							tvi.hItem=hti.hItem;							TreeView_GetItem(tvw,&tvi);							if (GetKeyState(VK_CONTROL)&0x8000) {								if (((MenuItemOptData *)tvi.lParam)->isSelected)									((MenuItemOptData *)tvi.lParam)->isSelected=0;								else									((MenuItemOptData *)tvi.lParam)->isSelected=1;  //current selection order++.								TreeView_SetItem(tvw,&tvi);							}
开发者ID:BackupTheBerlios,项目名称:mimplugins-svn,代码行数:67,


示例13: preview_proc

//.........这里部分代码省略.........                    break;                case SB_LINEDOWN: /* == SB_LINERIGHT */                    si.nPos += si.nPage / 10;                    break;                case SB_PAGEUP: /* == SB_PAGELEFT */                    si.nPos -= si.nPage;                    break;                case SB_PAGEDOWN: /* SB_PAGERIGHT */                    si.nPos += si.nPage;                    break;                case SB_THUMBTRACK:                    si.nPos = si.nTrackPos;                    break;            }            si.fMask = SIF_POS;            SetScrollInfo(hWnd, nBar, &si, TRUE);            GetScrollInfo(hWnd, nBar, &si);            if (si.nPos != origPos)            {                int amount = origPos - si.nPos;                if (msg == WM_VSCROLL)                    ScrollWindow(hWnd, 0, amount, NULL, NULL);                else                    ScrollWindow(hWnd, amount, 0, NULL, NULL);            }            return 0;        }        case WM_SETCURSOR:        {            POINT pt;            RECT rc;            int bHittest = FALSE;            DWORD messagePos = GetMessagePos();            pt.x = (short)LOWORD(messagePos);            pt.y = (short)HIWORD(messagePos);            ScreenToClient(hWnd, &pt);            GetClientRect(hWnd, &rc);            if (PtInRect(&rc, pt))            {                pt.x += GetScrollPos(hWnd, SB_HORZ);                pt.y += GetScrollPos(hWnd, SB_VERT);                bHittest = preview_page_hittest(pt);            }            if (bHittest)                SetCursor(LoadCursorW(GetModuleHandleW(0),                                      MAKEINTRESOURCEW(IDC_ZOOM)));            else                SetCursor(LoadCursorW(NULL, (WCHAR*)IDC_ARROW));            return TRUE;        }        case WM_LBUTTONDOWN:        {            int page;            POINT pt;            pt.x = (short)LOWORD(lParam) + GetScrollPos(hWnd, SB_HORZ);            pt.y = (short)HIWORD(lParam) + GetScrollPos(hWnd, SB_VERT);            if ((page = preview_page_hittest(pt)) > 0)            {                HWND hMainWnd = GetParent(hWnd);                /* Convert point from client coordinate to unzoomed page
开发者ID:RareHare,项目名称:reactos,代码行数:67,


示例14: sprintf

LRESULT nsf_window::onNotify(UINT uMsg, WPARAM wParam, LPARAM lParam){       int result = mainList->handle(lParam);  if (result == ENTRYLIST_SELCHANGED)  {    if (mainList->selectedChunk.type == 1)    {      //SendMessage(txtrhWnd, WM_ACTIVATE, 0, 0);    }    else    {                char temp[10];      sprintf(temp, "%i", mainList->selectedChunk.type);      SetDlgItemText(hSelf, IDC_CHUNKTYPEEDIT, temp);              sprintf(temp, "%i", mainList->selectedChunk.entryCount);      SetDlgItemText(hSelf, IDC_CHUNKENTRYCOUNTEDIT, temp);              sprintf(temp, "%x", mainList->selectedChunk.checksum);      SetDlgItemText(hSelf, IDC_CHUNKCHECKSUMEDIT, temp);                sprintf(temp, "%i", mainList->selectedEntry.type);      SetDlgItemText(hSelf, IDC_ENTRYTYPEEDIT, temp);              sprintf(temp, "%i", mainList->selectedEntry.itemCount);      SetDlgItemText(hSelf, IDC_ENTRYITEMCOUNTEDIT, temp);    }  }  else if (result == ENTRYLIST_RCLICK)  {    if ((mainList->selectedEntry.type == 1 && mainList->selectedItem != 0) ||         mainList->selectedEntry.type == 3 ||         mainList->selectedEntry.type == 7)    {      long mouse = GetMessagePos();      short mouseX, mouseY;      mouseX = GET_X_LPARAM(mouse);      mouseY = GET_Y_LPARAM(mouse);          TrackPopupMenu(hModelMenuA, TPM_BOTTOMALIGN | TPM_LEFTALIGN, mouseX, mouseY, 0, hSelf, NULL);    }    else if (mainList->selectedEntry.type == 1)    {      long mouse = GetMessagePos();      short mouseX, mouseY;      mouseX = GET_X_LPARAM(mouse);      mouseY = GET_Y_LPARAM(mouse);          TrackPopupMenu(hModelMenuB, TPM_BOTTOMALIGN | TPM_LEFTALIGN, mouseX, mouseY, 0, hSelf, NULL);    }    else if (mainList->selectedEntry.type == 11)    {      long mouse = GetMessagePos();      short mouseX, mouseY;      mouseX = GET_X_LPARAM(mouse);      mouseY = GET_Y_LPARAM(mouse);            TrackPopupMenu(hCodeMenu, TPM_BOTTOMALIGN | TPM_LEFTALIGN, mouseX, mouseY, 0, hSelf, NULL);    }  }  return NULL;}
开发者ID:Almamu,项目名称:crashutils,代码行数:64,


示例15: switch

// ---------------------------------------------------------------------LRESULT WinSkinWindow::wndProc(	HWND hWnd,			// ウィンドウハンドル	UINT uMsg,			// メッセ
C++ GetMessageTime函数代码示例
C++ GetMessage函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。