Click here to Skip to main content
15,894,362 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
QuestionMFC - Passing data between dialogs in Tab Control Pin
melinda_mel24-Sep-09 1:13
melinda_mel24-Sep-09 1:13 
AnswerRe: MFC - Passing data between dialogs in Tab Control Pin
Franck Paquier24-Sep-09 1:24
Franck Paquier24-Sep-09 1:24 
GeneralRe: MFC - Passing data between dialogs in Tab Control Pin
melinda_mel24-Sep-09 2:46
melinda_mel24-Sep-09 2:46 
GeneralRe: MFC - Passing data between dialogs in Tab Control Pin
David Crow24-Sep-09 3:03
David Crow24-Sep-09 3:03 
GeneralRe: MFC - Passing data between dialogs in Tab Control Pin
melinda_mel24-Sep-09 3:09
melinda_mel24-Sep-09 3:09 
AnswerRe: MFC - Passing data between dialogs in Tab Control Pin
Chuck O'Toole24-Sep-09 15:58
Chuck O'Toole24-Sep-09 15:58 
GeneralRe: MFC - Passing data between dialogs in Tab Control Pin
melinda_mel25-Sep-09 1:39
melinda_mel25-Sep-09 1:39 
GeneralRe: MFC - Passing data between dialogs in Tab Control Pin
Chuck O'Toole25-Sep-09 3:48
Chuck O'Toole25-Sep-09 3:48 
GeneralRe: MFC - Passing data between dialogs in Tab Control Pin
melinda_mel25-Sep-09 4:06
melinda_mel25-Sep-09 4:06 
GeneralRe: MFC - Passing data between dialogs in Tab Control Pin
Chuck O'Toole25-Sep-09 4:12
Chuck O'Toole25-Sep-09 4:12 
GeneralRe: MFC - Passing data between dialogs in Tab Control Pin
melinda_mel25-Sep-09 4:23
melinda_mel25-Sep-09 4:23 
GeneralRe: MFC - Passing data between dialogs in Tab Control Pin
Chuck O'Toole25-Sep-09 5:58
Chuck O'Toole25-Sep-09 5:58 
QuestionForcing a window to draw itself as active Pin
Code-o-mat24-Sep-09 0:40
Code-o-mat24-Sep-09 0:40 
AnswerRe: Forcing a window to draw itself as active Pin
«_Superman_»24-Sep-09 0:53
professional«_Superman_»24-Sep-09 0:53 
GeneralRe: Forcing a window to draw itself as active Pin
Code-o-mat24-Sep-09 1:06
Code-o-mat24-Sep-09 1:06 
QuestionDate picker control is not working Pin
Pryabu23-Sep-09 23:56
Pryabu23-Sep-09 23:56 
AnswerRe: Date picker control is not working Pin
«_Superman_»24-Sep-09 0:59
professional«_Superman_»24-Sep-09 0:59 
GeneralRe: Date picker control is not working Pin
David Crow24-Sep-09 3:11
David Crow24-Sep-09 3:11 
QuestionException throws debugging mode Pin
Game-point23-Sep-09 23:55
Game-point23-Sep-09 23:55 
AnswerRe: Exception throws debugging mode Pin
CPallini24-Sep-09 0:19
mveCPallini24-Sep-09 0:19 
GeneralRe: Exception throws debugging mode Pin
Game-point24-Sep-09 0:27
Game-point24-Sep-09 0:27 
QuestionRe: Exception throws debugging mode Pin
David Crow24-Sep-09 3:18
David Crow24-Sep-09 3:18 
QuestionStrange EnumChildWindows issue Pin
Maxwell Chen23-Sep-09 23:52
Maxwell Chen23-Sep-09 23:52 
When I declare a LVFINDINFO object in the function body, EnumChildWindows fails to locate the control of SysListView32 type (a Windows class type). When I remove the LVFINDINFO object from the body, it works well.

The code snippet is as the below.
void CMainDlg::OnBnClickedGetDolby()
{
	// Kill any running window if any.
	KillRunningApplet(_T("Sound"));

	// Launch it.
	if(!LaunchCplApplet(_T("mmsys.cpl"), 0, 0)) {
		OutputDebugString(_T("LaunchCplApplet fails. \n"));
		return;
	}

	// Make sure the applet pops up.
	CWnd* pWnd = NULL;
	int i = 0;
	while(!pWnd) {
		pWnd = FindWindow(NULL, _T("Sound"));
		if(pWnd) {
			OutputDebugString(_T("Found Sound window. \n"));
			break;
		}
		Sleep(10);
		i++;
		if(i > 1000) {
			OutputDebugString(_T("Sound window is not found. \n"));
			return;
		}
	}

	// ---
	m_pListView = NULL;
	EnumChildWindows(pWnd->m_hWnd, DoSomethingHelper, (LPARAM)this);

	if(m_pListView) {
		OutputDebugString(_T("Got SysListView32"));
	}
	else {
		OutputDebugString(_T("SysListView32 is not found."));
		return;
	}
	m_pListView->SendMessage(WM_KEYDOWN, VK_DOWN, 0);

	CListView* pView = (CListView*)m_pListView;
	CListCtrl& Ctrl = pView->GetListCtrl();

	LVFINDINFO info;  // <--- This line fails SysListView32.
	int iIndex = 0;

	info.flags = LVFI_PARTIAL | LVFI_STRING;
	info.psz = _T("Speaker");
/*

	while ((iIndex = Ctrl.FindItem(&info)) != -1) {
		OutputDebugString(_T("Speaker-like entry is found."));
		CString s = Ctrl.GetItemText(iIndex, 0);
		OutputDebugString(s);
	}
*/

}

BOOL CALLBACK DoSomethingHelper(HWND hwnd, LPARAM lParam)
{
	TCHAR sClassName[MAX_PATH] = {0};
	GetClassName(hwnd, sClassName, MAX_PATH);
	if(wcscmp(sClassName, _T("SysListView32")) == 0) {
		CMainDlg* pMain = (CMainDlg*)lParam;
		pMain->m_pListView = CWnd::FromHandle(hwnd);
	}
	OutputDebugString(sClassName);
	return TRUE;
}


  Maxwell Chen

AnswerRe: Strange EnumChildWindows issue Pin
Maxwell Chen24-Sep-09 0:02
Maxwell Chen24-Sep-09 0:02 
AnswerRe: Strange EnumChildWindows issue Pin
CPallini24-Sep-09 0:13
mveCPallini24-Sep-09 0:13 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.