|
Hi all,
I'm looking at creating one of those explorer bars in ie. Not done anything like this before, more of an MFC person up to now.
First question is, what am I trying to do? COM? COM+? ActiveX ? there are too many different terms and i'm not sure which one is relevant!
secondly, what books are a good starting point for the above?
Thanks
Jon
PS.. I've read the related articles on CP already, but still want a book.
Sorry to dissapoint you all with my lack of a witty or poignant signature.
|
|
|
|
|
|
Hi,
I am trying to activate a CView derived MDI window from a CControlBar containing an image list of view thumbnails. When I double click on the thumb I want to activate the view, i.e. bring it to the top. I cannot seem to get the SendCommand message right. Can someone help me with this.
::SendMessage(???,WM_MDIACTIVATE,(WPARAM)pTheViewToActivate,0);
Where do I need to send the message to for it to process the MDI activate message? MSDN also seems to be confused about the lparam, is it needed or not?
Many thanks
Matthew
|
|
|
|
|
(WPARAM)pTheViewToActivate looks like you're trying to send a CView pointer as the wParam. You should be sending an hWnd (window handle) instead.
But that's besides the point, because i think that CMDIChildWnd::MDIActivate() does exactly what you want.
jon
Sorry to dissapoint you all with my lack of a witty or poignant signature.
|
|
|
|
|
Ooops, i meant CMDIFrameWnd::MDIActivate()
Sorry to dissapoint you all with my lack of a witty or poignant signature.
|
|
|
|
|
Thanks for the pointer. It was a little more involved for me due to my requirements but it all resulted in a call to
CMDIChildWnd::MDIActivate
thanks again
Matthew
|
|
|
|
|
Hi,
I´m running MS Word embedded ( I mean like if it where an standalone application), and I want to show the Ms Word window at the left side of a window of my application ( just one view with some buttons to add some tables and that stuff).
I have seen that from the Application object word has two methods, "Move" and "Resize", but the problem that I found is that the coordinates seems not be in Pixels, do you know which coordinate system uses Word for that ?
( and how can I convert from Pixels to word thing coordinates... )
Thanks, Bye !
Braulio
|
|
|
|
|
Hi !
Which style ( or which things override) I have to modify to avoid that my window is resized ( I have a frame and sometimes when some reasons occurs I want to keep fixed the size of the frame).
Thanks, Bye !
Braulio
|
|
|
|
|
Put this line in CMainFrame::PreCreateWindow
cs.style &= ~WS_THICKFRAME;
Nish
Sonork ID 100.9786 voidmain
www.busterboy.org
If you don't find me on CP, I'll be at Bob's HungOut
|
|
|
|
|
Thanks Nish !
One more thing.... I would like that the user could not resize Horizontally but vertically yes, is that possible ?, Thanks !
Braulio
|
|
|
|
|
Yes. Override OnSizing. Not OnSize but OnSizing.
Nish
Sonork ID 100.9786 voidmain
www.busterboy.org
If you don't find me on CP, I'll be at Bob's HungOut
|
|
|
|
|
Hi,
I have found out something that works fine and is:
ModifyStyle( WS_THICKFRAME, 0);
But... I would like to allow the user resize vertical but not horiz., how can I do that ?
Thanks, Bye !
Braulio
|
|
|
|
|
You can try doing a hit test for non-client areas of a window and then based on the hit param decide on whether to allow resize or not.
Hope this helps
Cheers
Kannan
|
|
|
|
|
To allow resizing in only one direction, handle WM_NCHITTEST and change the return value from the default window procedure if necessary. For example, to allow only horizontal resizing:
UINT CMyWnd::OnNcHitTest ( CPoint pt )
{
UINT uRet = CWnd::OnNcHitTest(pt);
switch ( uRet )
{
case HTTOP: case HTBOTTOM:
uRet = HTNOWHERE;
break;
case HTBOTTOMLEFT: case HTTOPLEFT:
uRet = HTLEFT;
break;
case HTBOTTOMRIGHT: case HTTOPRIGHT:
uRet = HTRIGHT;
break;
}
return uRet;
} This changes the hit-test result so that when the cursor is in the top/bottom borders, it doesn't change to the resizing arrows.
--Mike--
My really out-of-date homepage
"Hey, you wanna go to the Espresso Pump and get sugared up on mochas?"
-- Willow Rosenberg
Sonork - 100.10414 AcidHelm
Big fan of Alyson Hannigan.
|
|
|
|
|
Thanks !!
Seeya !
Braulio
|
|
|
|
|
Ok, it's 11:00pm and I've been slinging code in front of this puter all day. What I can't remember is, what's the equivalent of a DoEvents for VC? What I need to do is to have the display refresh and respond to events while in a loop.
VB uses DoEvents to do this.
Just can't think this late at night.
Anybody wanna bail me out?
Thanks,
Nick
|
|
|
|
|
To refresh the screen, call Invalidate(). To respond to events while in a loop you should really have a UI thread and a worker thread. Otherwise the loop will stop the GUI from responding.
Christian
I have come to clean zee pooollll. - Michael Martin Dec 30, 2001
Sonork ID 100.10002:MeanManOzI live in Bob's HungOut now
|
|
|
|
|
while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
Nish
Sonork ID 100.9786 voidmain
www.busterboy.org
If you don't find me on CP, I'll be at Bob's HungOut
|
|
|
|
|
the mfc-way:
void DoEvents()
{
MSG m;
while(::PeekMessage(&m, 0, 0, 0, PM_NOREMOVE))
AfxGetApp()->PumpMessage();
LONG lIdle = 0;
while(AfxGetApp()->OnIdle(lIdle++ ))
;
}
have fun...
jk
|
|
|
|
|
I am in the preliminary stages of creating a media player. But i need some help in getting information on how to handle Direct X in Visual C++. Where to use it, and just general attributes as such. Any help would be greatly appreciated.
BH_BAD
|
|
|
|
|
I presume you want to use Directsound ? There's an mp3player that uses DS on CP, search for MPEG.
If you use DirectShow, your media player will essentially be your dialog running Media Player as a COM object.
Jonathon
|
|
|
|
|
You need to download the DirectX SDK from a Microsoft site... A .CHM file goes with it which explains the fundamentals of all DX components (DirectSound and DirectShow will be there too). there are some nice tutorials, too.
So, do it and start reading...
"Needless redundancy is the hobgoblin of software engineering." - Peter Darnell
|
|
|
|
|
I want to change the background color of the standard CFileDialog to white, but I can't figure out how to do that...
I derived a my own class CMyFileDialog from CFileDialog and tried to handle OnCtlColor() in there but that fuction doesn't get called at all???
Does one of the guru's here know how to change the background color in CFileDialog ?
Thanks a bunch!
|
|
|
|
|
If it is possible to do that, try WM_ERASEBKGND instead.
------------------------------
©0d3 ©®4©k3® - That's me!
------------------------------
|
|
|
|
|
Hey all!
I noticed that IE can display text in foreign languages on buttons, in list boxes and as HTML (rich text), even on Win9X platforms (with no special foreign-language installations).
I would like to incorporate similar functionality in my application. I managed to write SOME Unicode text on the Rich Edit control (Hebrew, Arabic, no Chinese though). I didn't manage to display foreign languages in the List View common control (tried using the CCM_SETUNICODEFORMAT message, didn't help), and I have no idea how to write such text on a simple button.
Any ideas?
Thanks!
|
|
|
|