Re: Passing a CEdit object to another class..
Assign a variable in your worker thread (when it is created) something like:
// Created thread;
// I do it this way so I can use any window I want for messages.
// Assume this sets a variable in the thread object called m_pUIWnd of type
CWnd *
pThreadObject ->SetUIWnd(this);
From worker thread:
m_pUIWnd->SendMessage(MYMESSAGE,pMyWordData,pMyLongPointer;
// The pMyLongPointer could point to the data you want to have added in the
control
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/messagesandmessagequeues/messagesandmessagequeuesreference/messagesandmessagequeuesfunctions/postmessage.asp
Check out Joe's article:
http://www.flounder.com/uithreads.htm
Tom
"Frank B." <kefkastudio@gmail.com> wrote in message
news:1157745352.967942.86510@d34g2000cwd.googlegroups.com...
I apologize, can you give me an example?
Frank B.
Ajay Kalra wrote:
Dont pass CEdit to the worker thread. Instead let the worker thread
post a message to main gui thread/dialog which will update the edit
box. Only pass window handles(HWND) across threads instead of CWnd*.
---
Ajay
This is how I've created a thread..
void CvcatTransmit::OnTransmitStart()
{
thread = (CThread *)AfxBeginThread(RUNTIME_CLASS(CThread),
THREAD_PRIORITY_NORMAL,
0, //stacksize
CREATE_SUSPENDED);
thread->SetMe = true;
thread->ResumeThread();
}
CThread is a class that inherits CWinThread.
Now, in my thread I need to be able to update my edit boxes which
reside in the CvcatTransmit class.
this is what I've tried:
inside of Thread.h
CEdit * MyBox;
then inside OnTransmitStart()
thread->MyBox = &vcatBox;
and it fails to work.. any other ideas?