|
|
I am able to open the source code but I am getting this error message
error C2440: 'initializing' : cannot convert from 'char [11]' to 'const unsigned short *'
S.Yamini
|
|
|
|
|
yaminisridaran wrote: error C2440: 'initializing' : cannot convert from 'char [11]' to 'const unsigned short *'
You need to show code, where this error is occuring.
Instead of clustering this thread, start new thread for this question.
|
|
|
|
|
Using the below code I was able to change the colour of the edit box but can I know for changing the colour of button and list control what CTLCOLOR we have to use
if (nCtlColor == CTLCOLOR_EDIT)
{
hbr = CreateSolidBrush(RGB(255,0,0));
}
return hbr ;
S.Yamini
|
|
|
|
|
Refer MSDN. You have missed this line for varius controls,
CTLCOLOR_BTN Button control
CTLCOLOR_DLG Dialog box
CTLCOLOR_EDIT Edit control
CTLCOLOR_LISTBOX List-box control
CTLCOLOR_MSGBOX Message box
CTLCOLOR_SCROLLBAR Scroll-bar control
CTLCOLOR_STATIC Static control
|
|
|
|
|
This works great.
Ur project is showing error message.
error RC2135 : file not found: ATLNotify.tlb
I want to learn COM CAN u give me any suggestion
S.Yamini
|
|
|
|
|
yaminisridaran wrote: Ur project is showing error message.
error RC2135 : file not found: ATLNotify.tlb
Which IDE you are using ? It works great for me on VC6 and VS2005.
yaminisridaran wrote: I want to learn COM CAN u give me any suggestion
1. Book[^] by Don Box.
2. Inside COM[^] by Dale Rogesron.
Additionally refer beginner[^] section on CP.
|
|
|
|
|
|
As told you already, you need to ask such questions to article authors.
|
|
|
|
|
yaminisridaran wrote: CBrush m_brush;
i didn't mention it my previous post. Make the m_brush is member to the dialog class
Do your Duty and Don't expect the Result Rate this Post, if I helped You
|
|
|
|
|
Your dialog's OnCtlColor should look like this,
HBRUSH CMyDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if (nCtlColor == CTLCOLOR_DLG)
{
hbr = CreateSolidBrush(RGB(0,45,23));
}
return hbr ;
}
Remember to do this by adding WM_CTLCOLOR handler thorugh class wizard.
|
|
|
|
|
prasad_som wrote: hbr = CreateSolidBrush(RGB(0,45,23));
Isn't it a resource leake?..
Do your Duty and Don't expect the Result Rate this Post, if I helped You
|
|
|
|
|
Parthi_Appu wrote: Isn't it a resource leake?..
No, will be deleted by framework.
|
|
|
|
|
prasad_som wrote: No, will be deleted by framework
No its a leake...
Check the GDI objects in task manager. Its keep on increasing when you move any window(task manager window itself) over the dialog. But if you return the HGDIOBJ of member variable, then the count remains same...
Do your Duty and Don't expect the Result Rate this Post, if I helped You
|
|
|
|
|
Right now, I cant check it. But , be sure, its not a leak.
|
|
|
|
|
It is deleted by framework
S.Yamini
|
|
|
|
|
This Works great. Thanks alot.
Can u plz tell me or give me any e books to learn about automation (COM)
|
|
|
|
|
I saw ur message notifier using ATL and I am not able to open the source code using vc++
S.Yamini
|
|
|
|
|
yaminisridaran wrote: dont see any change in the dialog colour
can you show me the code?
You called the SetDialogBkColor() above the line
int nResponse = dlg.DoModal(); isn't it? not below na ?
nave
|
|
|
|
|
I implemented the code in initinstance for changing the formview colour and if possbile the mainframe colour..
The code in Initinstance
if (!ProcessShellCommand(cmdInfo))
return FALSE;
// The one and only window has been initialized, so show and update it.
SetDialogBkColor(RGB(255,200,100), RGB(1,1,1));
m_pMainWnd->ShowWindow(SW_SHOW);
m_pMainWnd->UpdateWindow();
S.Yamini
|
|
|
|
|
ops I though its a dialog based application. In this case(SDI or MDI ) you need to handle the WM_CTLCOLOR message
nave
|
|
|
|
|
Thanks.It works
Can u give me the ebook for automation or any information regarding automation
S.Yamini
|
|
|
|
|
yaminisridaran wrote: I tried implemented SetDialogBkColor in InitInstance inorder to change the colour of my dialog box
This function is obsolete now, use method suggested by parthi or you can handle WM_CTLCOLORDLG for this,too.
|
|
|
|
|
I am getting the error message in this code
CNotifyWnd(HWND hParentWnd=NULL,int nWidth=100,int nHeight=80,unsigned int nShowTime=100,BYTE nOpacity=255 )
:m_hParenWnd(hParentWnd),m_nWidth(nWidth),m_nHeight(nHeight),m_nShowTime(nShowTime),m_nOpacity(nOpacity),m_nCurrentOpacity(0)
{
}
DECLARE_WND_CLASS("CNotifyWnd")
BEGIN_MSG_MAP(CNotifier)
MESSAGE_HANDLER(WM_CREATE, OnCreate)
MESSAGE_HANDLER(WM_TIMER, OnTimer)
MESSAGE_HANDLER(WM_PAINT, OnPaint)
MESSAGE_HANDLER(WM_DESTROY, OnDestroy)
MESSAGE_HANDLER(WM_CLOSE, OnClose)
MESSAGE_HANDLER(WM_MOUSEMOVE, OnMouseMove)
MESSAGE_HANDLER(WM_MOUSELEAVE, OnMouseLeave)
//reflect notifications to child
REFLECT_NOTIFICATIONS()
|
|
|
|
|
I found this paragraph in MSDN:
Most drawing in a framework program—and thus most device-context work—is done in the view’s OnDraw member function. However, you can still use device-context objects for other purposes. For example, to provide tracking feedback for mouse movement in a view, you need to draw directly into the view without waiting for OnDraw to be called.
In such a case, you can use a CClientDC device-context object to draw directly into the view.
So I'd like to know what's the exact meaning of this paragraph and if there's some code to reference.
|
|
|
|