|
CListCtrl* pListCtrl = (CListCtrl*) GetDlgItem(IDC_YOURLISTCONTROL);
ASSERT(pListCtrl != NULL);
POSITION pos = pList->GetFirstSelectedItemPosition();
if (pos == NULL)
TRACE0("No items were selected!\n");
else
{
while (pos)
{
int nItem = pList->GetNextSelectedItem(pos);
TRACE1("Item %d was selected!\n", nItem);
// you could do your own processing on nItem here
}
}
My God is more powerfull Than Your God. (the line that divides the world)
|
|
|
|
|
Hi,
I tried this.But I am getting the nItem value as 0 always though I am selecting items at different postions in the list.
Karteek
|
|
|
|
|
Another method is to iterate throught each item in the list and check wheather it is selected or not.
My God is more powerfull Than Your God. (the line that divides the world)
|
|
|
|
|
If you are using MFC:
int nIndex = listbox.GetCurSel();
listbox.DeleteString(nIndex);
Five birds are sitting on a fence.
Three of them decide to fly off.
How many are left?
|
|
|
|
|
Hi guys
I have a problem similar to this>
There is class A which is derived from CDialog.
I have no. of other classes which are derived from class A for creating dialog boxes.
I need to handle keyboard events in my dialog boxes.
If I add ON_WM_SYSCOMMAND()message and following functions in class A
void A::DoDataExchange(CDataExchange* pDX)
{
A::DoDataExchange(pDX);
}
and then handle keyboard events in
BOOL A::PreTranslateMessage(MSG* pMsg)
{
QB_ASSERT( pMsg, return FALSE;);
if (pMsg->message == WM_KEYDOWN)
{
if (pMsg->wParam == VK_F1 || pMsg->wParam == VK_ESCAPE)
{
//I will handle my keyboard event here
}
}
return CDialog::PreTranslateMessage(pMsg);
} //A::PreTranslateMessage
Will i be able to handle keyboard events in my classes that are derived from class A. I don;t want to add the redunudant code to my all derived classes.
Help me with your kind suggestions.
Regards
Chandok
|
|
|
|
|
|
Hey guys. I have a toolbar that I'm working on, and I've got it working just ducky except for a few things... I currently it have it redirect on a 404 or whatever to something like: http://www.mysite.com/404.html but I would like to not have it show the URL of the error page in the address bar... Even if I have to somehow make a dll or something that contains the custom 404/etc error messages, how can I go about doing so?
|
|
|
|
|
...could you explain why? Or more exactly, explain in satisfying detail that your toolbar is not one of those awful ad bars that i spend so much time cleaning off of relatives' computers.
Shog9
---
You'd better turn back, before the frost sets in.
These desert nights are for weathered men,
The ones who've already given in...
|
|
|
|
|
*laugh* Hell no. It's actually going to be for a game of mine that I run, and it's going to give people stats about the game etc. :P It's not an ad bar by any means. :P
|
|
|
|
|
Vermithrax wrote:
It's not an ad bar by any means.
Kewl. Well, not sure where you're intercepting the 404, but responding with a 302 that redirects to your page sounds like the way to go.
Shog9
---
You'd better turn back, before the frost sets in.
These desert nights are for weathered men,
The ones who've already given in...
|
|
|
|
|
Ok.. Now will that send me to the custom 404 page and leave the original address in the address bar?
|
|
|
|
|
As i understand it, it *should*. Now, whether IE actually does this or not... *shrug*
Shog9
---
You'd better turn back, before the frost sets in.
These desert nights are for weathered men,
The ones who've already given in...
|
|
|
|
|
Unfortunately that code redirects just fine, but it shows the URL up top.. Which I don't want, I just want the site that they tried to get to up there in the address bar.
|
|
|
|
|
This is what my code looks like here:
void __stdcall CIEBand::OnNavigateError(IDispatch* pDisp, VARIANT* URL, VARIANT* TargetFrameName, VARIANT* StatusCode, VARIANT_BOOL* &Cancel)
{
if(StatusCode->intVal != HTTP_STATUS_OK)
{
CStringW c = "http://www.mysite.com/404.html";
VARIANT_BOOL topLevel;
if(m_pWb2 == pDisp && SUCCEEDED(m_pWb2->get_TopLevelContainer(&topLevel)) && topLevel)
{
m_pWb2->Stop();
m_pWb2->Navigate2(&CComVariant(c), &vtMissing, TargetFrameName, &vtMissing, &vtMissing);
}
}
}
|
|
|
|
|
I'm not sure... I have my code below, and I'm not quite sure that'll work...
|
|
|
|
|
Well... can't give you a good solution, but here's a hack that might do for you. Navigate to this URL (replacing winamp.com with whatever):
javascript:document.write('<body style=\"overflow:hidden;margin:0px;padding:0px;border:none;\"><iframe src=\"http://www.winamp.com/\" style=\"margin:0px;padding:0px;border:none;width:100%;height:100%;\"></iframe></body>')
Shog9
---
You'd better turn back, before the frost sets in.
These desert nights are for weathered men,
The ones who've already given in...
|
|
|
|
|
Hi!
In MFC how can we find the ip address of our own computer?
Thanks.
Avi
|
|
|
|
|
Try gethostname() followed by gethostbyname() .
(David Crow posted this reply to an identical question earlier today).
/ravi
Let's put "civil" back in "civilization"
Home | Articles | Freeware | Music
ravib@ravib.com
|
|
|
|
|
hi Ravi,
thanks for pointing to that message. but this is what i meant--
is it possible to obtain ipaddress of a computer, when it is not connected to network. say u run mfc application on your computer and it prints out the ipaddress of your machine. i was wondering if there was any function available in mfc for this purpose.
thanks.
Avi
|
|
|
|
|
I suspect David's solution may just return 127.0.1.1 ("localhost") if you're not part of a LAN. Perhaps you want this[^] article?
/ravi
Let's put "civil" back in "civilization"
Home | Articles | Freeware | Music
ravib@ravib.com
|
|
|
|
|
I'm a tyro at VC++, but I've been following this thread with some interest. Forgive me if this is a stupid idea, but is there some way you can capture the output of a call to ShellExecute on the command ipconfig? If you're disconnected you may have to add the /all option to make it cough up inactive connections, and you're probably going to have to parse a bunch of text to capture the IP address. Just a thought - I haven't tried it. But I hope that it might provide some sort of solution, however kludgy it might be...
"Another day done - All targets met; all systems fully operational; all customers satisfied; all staff keen and well motivated; all pigs fed and ready to fly" - Jennie A.
|
|
|
|
|
Hi,
The ShellExecute doesn't output the text returned by ipconfig, but you can redirect the output from ipconfig to a file!
For exemple: in the console (command prompt if you will) one can type
"ipconfig /all > somefile.txt".
This way the output will be written in "somefile.txt". If it doesn't exist, it'll be created.
Knowing this, the call to ShellExecute() will look like this
<FONT COLOR="blue">int</FONT> nResult = ShellExecute(hYourMainWindowHandle,
NULL,
"ipconfig /all > SomeFile.txt",
NULL,
NULL,
0
);
All you have to do is parse "SomeFile.txt".
Hope this helps
A student knows little about a lot.
A professor knows a lot about little.
I know everything about nothing.
|
|
|
|
|
That was my thought - redirect to a file and read it back. But I assumed someone smarter than I might know a way to do it more efficiently C++. In Java, of course, you'd only have to do a
InetAddress address = InetAddress.getByName(<host url="">);
byte[] addressBytes = address.getBytes();
to retrieve the machine address.
"Another day done - All targets met; all systems fully operational; all customers satisfied; all staff keen and well motivated; all pigs fed and ready to fly" - Jennie A.
|
|
|
|
|
Roger Wright wrote:
...is there some way you can capture the output of a call to ShellExecute on the command ipconfig?
Yes, see these MSDN articles for examples:
http://support.microsoft.com/default.aspx?scid=kb;en-us;190351
http://tinyurl.com/guro
Five birds are sitting on a fence.
Three of them decide to fly off.
How many are left?
|
|
|
|
|
I need to present a dialog to the user similar to an installer license agreement dialog. What is the best way to present many read-only lines of vertical-scrollable text to the user with automatic horizontal word-wrapping? I thought that something like word-wrapping would be a basic feature for the MFC CEdit control, but I couldn't find any option to enable it.
|
|
|
|