|
Thanks naveen. I got it.
But one question why am not able to use above code in other functions.I want to include copy & paste function for CListCtrl,Below is a code which i got from google
In the below code am facing two problems
1)As i told CEdit* edit = m_Pressure.GetEditControl(); is always NULL
2)when i include CListCtrl& m_list4 = GetListCtrl( ); am getting below errors
D:\JUNE\VC\test1\list.cpp(147) : error C2065: 'GetListCtrl' : undeclared identifier
D:\JUNE\VC\test1\list.cpp(147) : error C2440: 'initializing' : cannot convert from 'int' to 'class CListCtrl &'
BOOL list::PreTranslateMessage(MSG* pMsg)
{
// TODO: Add your specialized code here and/or call the base class
if ( pMsg->message == WM_KEYDOWN )
{
CListCtrl& m_list4 = GetListCtrl( );
CEdit* edit = m_Pressure.GetEditControl();
if (edit)
{
if( GetKeyState( VK_CONTROL ))
{
if( pMsg->wParam == VK_C )
{
edit->Copy();
return TRUE;
}
if( pMsg->wParam == VK_V )
{
edit->Paste();
return TRUE;
}
if( pMsg->wParam == VK_X )
{
edit->Cut();
return TRUE;
}
if( pMsg->wParam == VK_Z )
{
edit->Undo();
return TRUE;
}
}
if( pMsg->wParam == VK_RETURN || pMsg->wParam == VK_ESCAPE ||
pMsg->wParam == VK_CONTROL || pMsg->wParam == VK_INSERT ||
pMsg->wParam == VK_SHIFT )
{
edit->SendMessage(WM_KEYDOWN, pMsg->wParam, pMsg->lParam);
return TRUE;
}
}
}
return CDialog::PreTranslateMessage(pMsg);
}
Please help me out.
Thanks
|
|
|
|
|
GetEditControl() will return only a vaild pointer only if the edit control is visible to the user. in other cases, it will be null.
About the above code, they might have implemented there on edit control in the list control.
shir_k wrote: I want to include copy & paste function for CListCtrl,
Are you trying to paste when the edit control is visible?If so, there is no need of the above code na? You can directly do copy/paste on edit control.
|
|
|
|
|
Hi,
Am able to do copy & paste from the edit box directly but in Control list box it is not possible.
When i checked class definition of
CEdit --> it has clipboard operation
void Clear();
void Copy();
void Cut();
void Paste();
But i didn't find it in CListCtrl.So i thought of using
CEdit* GetEditControl() const;
so once i get handle then i may able to do copy & paste.
Is there any other way to do.
|
|
|
|
|
shir_k wrote: so once i get handle then i may able to do copy & paste.
Suppose you press ctrl+c on the list control. Then what do u expect?
1)The text in first column of selected row is copied?
2) The whole text in list control is copied?
Also what will be the case of ctrl+c?
|
|
|
|
|
i expect it to copy the selected data in the column.Am having only one column.
And i want that data to be pasted in a notepad.
|
|
|
|
|
shir_k wrote: i expect it to copy the selected data in the column
Then no need of the edit control and all.
Directly copy the data from the clipboard and set it as text to the column.
|
|
|
|
|
i don't know how to copy data from Control list to clipboard and from clipboard to notepad.
I tried this using API's(OpenClipBoard()....) of MFC but i was not sucessful. If u have any code plz share it or tell me the steps to do it.
Thanks
|
|
|
|
|
try this. this will copy the text in the selected row to clip board.
<br />
int nItem = m_list.GetNextItem( -1, LVNI_SELECTED );<br />
if( -1 == nItem )<br />
{<br />
return;<br />
}<br />
CString csPath;<br />
csPath = m_list.GetItemText( nItem,0 );<br />
OpenClipboard();<br />
EmptyClipboard(); <br />
int nSize = (csPath.GetLength() + 1) * sizeof(TCHAR);<br />
HGLOBAL hglbCopy = GlobalAlloc(GMEM_MOVEABLE, nSize ); <br />
if (hglbCopy == NULL) <br />
{ <br />
CloseClipboard(); <br />
return; <br />
} <br />
LPTSTR lpData = (LPTSTR)GlobalLock(hglbCopy); <br />
memcpy(lpData, csPath, nSize ); <br />
lpData[nSize-1] = (TCHAR) 0;<br />
GlobalUnlock(hglbCopy);<br />
SetClipboardData( CF_UNICODETEXT, hglbCopy ); <br />
CloseClipboard();
where m_list is the control variable for the list control
|
|
|
|
|
Thanks a lot Naveen.
Am able to copy the data.I was trying this from past 3 days.Thank you very much.
|
|
|
|
|
Hello everyone,
I have used unmanaged C++ developed a native COM DLL. Then I use OLE Viewer (from command line oleview) to open (Bind To File function) the DLL. Then there is an error message.
IMoniker:BindToObject failed on the file moniker created from (c:\temp\foo.dll) Bad extension for file
(MK_E_INVALIDEXTENSION) ($800401E6)
Anything wrong?
thanks in advance,
George
|
|
|
|
|
Hello everyone,
I find that we can use tlbexp command like *tlbexp <dll name="">* to export tlb file for a C# COM assembly, but can not use it to export tlb file for an unmanaged C++ COM DLL. Is that correct?
I am wondering how to export tlb file of an unmanaged C++ COM DLL?
thanks in advance,
George
|
|
|
|
|
I have a service, i need to do some task when its been killed from task manager/abruptly stopped. How can i do it ? does SCM sends some message so that i can handle it in Service Control handler function ??
|
|
|
|
|
I just began learning socket programming and use
http://www.codeproject.com/internet/JavaCSocket.asp[^]
this article as my reference.
I tried the attached example project, and found that it was easy to use.
But when I add the files ( sock.cpp, sock.h ) to my other project, there was many errors when I build it, such as
LINK : fatal error LNK1152: cannot resolve one or more undecorated symbols
Can anybody tell me what should I do?
Thanks in advance
----------
C++ Learner
|
|
|
|
|
You need to include WS2_32.lib into you project.
Add this library simply to your project (like adding an existing .cpp or .h )
Good luck
|
|
|
|
|
I have coded a loop to find all files and folders on a certain drive. The loop works flawlessly but it takes too much time. On my machine, scanning drive C with close to 100000 files, it takes a good 7 seconds. The loop works in a way that it does a recursive search of each directory, copies the filename and path and adds this to a linked list for later processing.
I'm looking for a way to speed this process up. The use of threads may well do this, but it would be more than complicated to code. How would you decide when a thread is required, how would you manage the handles and synchronisation problems?
I would be interested to know how others would approach this problem.
Waldermort
|
|
|
|
|
One suggestion, but I am not sure it is useful to you.
Since there is a lot of files in the drive, I would limit the searching to certain level. For example, first search the root. The search will be done for one of the subfolder only when it is needed. So the initial time can be reduced.
- NS -
|
|
|
|
|
Unfortunatly that isn't going to work. I need to perform a series of calculations for each file on the drive, which in itself can be a time consuming procedure. To avoid this I decided to fist construct a linked list of all the files. From there I can launch a series of threads to do the bulk of the work.
I guess there is no way around it but to add a "please wait" popup
Waldermort
|
|
|
|
|
WalderMort wrote: but to add a "please wait" popup
- NS -
|
|
|
|
|
Hi Experts,
How can I check for particular version of MS-Outlook from registry value.
Thanx in advance.
|
|
|
|
|
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Outlook Express/Version Info/Current
The Data field of the Current is the version of your outlook express, e.g. 6,0,2900,2180.
--
=====
Arman
|
|
|
|
|
MAPI should be used too ?!
VirtualVoid.NET
|
|
|
|
|
pther wrote: How can I check for particular version of MS-Outlook from registry value.
See here (again).
"A good athlete is the result of a good and worthy opponent." - David Crow
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
How to get HInstance of ToolBar item??
Or How tochange image to the toolbar??
ThankXXX
|
|
|
|
|
abhijit bhopale wrote: How to get HInstance of ToolBar item??
What does it mean?
abhijit bhopale wrote: How tochange image to the toolbar??
Is CToolBar::SetButtonInfo useful?
- NS -
|
|
|
|
|
Say one game only support lan connection by ipx/udp.
And no source code for the game.
How to make it support Internet connection?
There are several programs which can do this. I'd like to program one myself, because the game is not well supported by the commercial company any more.
Any help is appreciated.
Thanks very much.
|
|
|
|