|
I am assigning CString, long and Int variables to ODBC recordset variables. When I try to update the database, the CStrings are updated, however, the Longs and the Ints are not. Has anyone else had this problem? If so, can you help?
Thank you.
Louise
|
|
|
|
|
This has been driving me nuts for two days - anyone know how to do it?
The first way I thought of doing it was getting the select text position - this works if text is selected - but not if no text is selected
Cheers,
Peter
|
|
|
|
|
Maybe you can use GetCaretPos().
/Per
|
|
|
|
|
LOL
Didn't think it would be a base class CWnd function.
Thanks!
Cheers,
Peter
|
|
|
|
|
Hi,
I'm trying to implement a drag drop within my MFC, MDI based app.
I have a CTreeView derived view, and I've implemented drag drop with it. I want the user to be able to drag treeview items and drop them on another window in my application.
I haven't implemented everything yet, but I'm taking it step by step. Here's what I've done
1. Handled the TreeView notification TVN_BEGINDRAG. Used the TreeCtrl to create a drag image list, done a BeginDrag and a DragEnter, set a member pointer to this window (m_p_wndDragSrc) in my main frame, and then SetCapture() in the main frame, my CMDIFrame derived window...
2. The CMDIFrame window handles WM_MOUSEMOVE to update the imagelist/pointer location.
That much all works fine.
What I want to happen is that when a drag starts, if the cursor is moved over a different child window in the main frame, that window should be brought to the front.
I've tryed code like this in the CMainFrame::OnMouseMove function:
CWnd *p_wndUnderPoint=ChildWindowFromPoint(point);if (p_wndUnderPoint && (p_wndUnderPoint != this)) p_wndUnderPoint->SetFocus();
Unfortunately, this doesn't do anything. I've tryed all sorts of possible CWnd:: functions, like SetFOcus, BringWindowToTop and so on. But none of them have the desired effect.
Can anyone give me some pointers? (pun. bad one. sorry)
|
|
|
|
|
After I press down the left button ,I don't know what can I do to make My Window get the Mouse events,Unless I release the button.
datablader
|
|
|
|
|
Hi,
With the version of IE5.0. We get the IHTMLElement "FRAME" as the active element after calling get_activeElement() function from top document even if the active element is a control or something other than the frame itself.
Does anyone know how to get this active element?
Oguzhan...
|
|
|
|
|
I have an ActiveX control type:Microsoft Web Browser and i want to
disable copy can anybody help me ?
|
|
|
|
|
Hi,
can anyone help, I'm trying to add help to a property sheet (just the plain button to side of the OK/Cancel buttons) and I've done the following:
(in prop-sheet constructor)
m_psh.dwFlags |= (PSH_NOAPPLYNOW | PSH_HASHELP);
(in prop-page OnInitDlg (tried both before and after call to base class))
m_psp.dwFlags |= PSP_HASHELP;
Added a handler for the ID_HELP called OnHelp in the prop-page class.
My problem is, the button is *always* disabled... is there something else I have to do? the help seems quite bad in this area!
Regards,
Ray
|
|
|
|
|
You should handle WM_HELPINFO (not ID_HELP) in the property page class.
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
I was indeed using ID_HELP, but can not use WM_HELPINFO since it doesn't seem to be defined. I tried, for completeness, WM_HELP but I'm still in the "disabled" situation.
Any other ideas?
Regards,
Ray
|
|
|
|
|
can not use WM_HELPINFO since it doesn't seem to be defined.
What do you mean? Are you getting a compiler error?
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
That seemed to be the case, but I've now used the ClassWizard to put in a handler ( which was done as ON_WM_HELPINFO() rather than an ON_COMMAND(WM_HELPINFO,OnHelp) as I'd added by hand. )
It still, however, is not enabled when I run the application. Do I need any enabler handlers?
Regards,
Ray
|
|
|
|
|
|
Thanks Tomasz,
whilst I'm sure I'm doing more than I need to do, the following seemed to get things working for me.
1) setting the psp flags within the constructor (not OnInitDialog)
2) adding the WM_HELP handler (called WM_HELPINFO from ClassWizard)
3) adding an ON_BTN_CLICKED handler for ID_HELP.
Seems more work than I thought, but works a charm.
Thanks for your input.
Regards,
Ray
|
|
|
|
|
Hi,
Can anyone point me in the right direction of creating an app with an embedded word document.
I don't know where to start.
Cheers
Rich
|
|
|
|
|
Hello!!
I am writing a TAPI program in which there are two appliations.One for the server and one for the client.
When I am dialing from the client it reaches the server and then the server calls lineAccept(). The lineAccept also succeeds. It then goes to LINE_REPLY of teh server and it gives error there i.e the dwParm2 value is negative... The dwParam1 paramater(dwrequestID) of the lineCallBackFunc is same as the return value of the lineAccept().
The error is LINEERR_OPERATIONUNAVAIL which means:
The operation is not available, such as for the given device or specified line.
We have no idea as to why this error is occuring..
Please help..
Sandeep
|
|
|
|
|
Hi!
I am a newbie, and trying to to some very simple VisualC++ stuff. I have a bit of a newbie question regarding updating of a windows client area when the window has been, for instance, covered by another window or minimized/restored.
I am putting pixels on the client area via the windows dc using the CDC::SetPixel(...). When all pixels are put, I would think they are stored somewhere for Windows to automatically redraw the client area when needed. Am I wrong?
Or must I create my own place for the pixels (like a CBitmap?) and try to re-display the bitmap in a OnPaint message handler (or another propriate handler)? Or what need I do?
I am not using the Doc/View architecture (if that would have taken care of this for me), only a simple CFrameWnd derived window.
Would be very grateful for any input!
|
|
|
|
|
Or must I create my own place for the pixels (like a CBitmap?) and try to re-display the bitmap in a OnPaint message handler (or another propriate handler)?
Windows doesn't store the window contents for you. You have two options:
1) always redraw the pixels in OnPaint
2) draw pixels in off-screen buffer (using CBitmap and memory device context), then BitBlt in OnPaint. There's a class called CMemDC somewhere on this website - it should make this easier.
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
Thanks for answer!
I try to move the pixel-filled dc by Blt:ing the drawn area to a CBitmap member in my class. I try to do this by following the advice in the Reply I found on another thread (see reply at bottom of this).
When I try to do this and before doing the BitBlt, I first create a 'dummy' CDC object and then do SelectObject(...) my CBitmap into this dummy CDC. When I do this I get ASSERT failure... does my dummy CDC need to be initialized in someway? MUST I attach it to a window or anything? (It's members m_hDc and m_hAttribDC are both 0.)
Re: How do I 'fill' a CBitmap with a DC's 'image'
Jonathon Lockett 19:31 8 Jul 01
If you've got a DC and you want to copy it to a CBitmap, just select the CBitmap into another DC and Blt across.
Jonathon
|
|
|
|
|
No bother!
I never did a CDC::CreateCompatibleDC(...) on my dummy CDC.
It now works!
Many thanks for your effort.
|
|
|
|
|
You need two objects:
1) a memory device context (use CreateCompatibleDC)
2) a bitmap (use CreateCompatibleBitmap and pass the same DC as the one passed to CreateCompatibleDC as 1st arg)
You should select a bitmap into memory DC, draw the pixels. In OnPaint handler just BitBlt from memory DC to CPaintDC.
All this stuff is encapsulated by CMemDC class available right here on CodeProject. Give yourselft a favor and search for this.
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
I'm writing an USB camera-capture program using DirectShow. I've succeeded previewing and writing the captured stream to an AVI file. But the written file is very slow because it isn't compressed. I don't know how to add a compression filter into the capture graph. So I've added some code fragment about compression filter, but it didn't work. How can I work with a compression filter??
Here's my code fragment.
// File-Writing section - capture
// Capture Filter Graph
ICaptureGraphBuilder2 *m_pBuilder = NULL;
// Filter Graph
IGraphBuilder *m_pGraph = NULL;
// Capture Filter
IBaseFilter *m_pSrc = NULL;
// AVI MUX Filter
IBaseFilter *m_ppf = NULL;
// File Writer
IFileSinkFilter *m_pSink = NULL;
// AVI Compression Filter (doesn't work!!)
IBaseFilter *m_pComp = NULL;
// omitted......
m_pBuilder->SetOutputFileName(&MEDIASUBTYPE_Avi, L"C:\\Example.avi", &m_ppf, &m_pSink);
// Creating a compression filter
CoCreateInstance (CLSID_AVICo, NULL, CLSCTX_INPROC,
IID_IBaseFilter, (void **)&m_pComp);
m_pGraph->AddFilter (m_pComp, L"Compressor");
m_pBuilder->RenderStream (&PIN_CATEGORY_CAPTURE, &MEDIATYPE_Video, m_pSrc,
m_pComp, // compression filter.
m_ppf // Default renderer.
);
// Rendering the streams - preview
m_pBuilder->RenderStream (&PIN_CATEGORY_PREVIEW, &MEDIATYPE_Video, m_pSrc,
NULL, // No compression filter.
NULL // Default renderer.
);
|
|
|
|
|
I need to write a module in VC to end ("terminate") a running exe file.
|
|
|
|
|
Take a look at the "kill"-sample in the MSDN
|
|
|
|