|
thebeekeeper wrote: The only idea that I have right now is that my initial cast in DrawItem is bad.
That cast is valid and necessary, since
DRAWITEMSTRUCT.itemData is a ULONG_PTR.
I'm not sure why you're getting garbage there...
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
|
I'm using the same CA2W conversion that I use on a const char* from c_str(). And no, it doesn't work, but the strange thing is that it's like the data is going bad when I pass it into CMyList::AddString().
So, if I create a LPCWSTR hello = TEXT("hello") and pass it into CListBox and CMyList::AddString everything works fine.
But! If I do a CA2W conversion and pass it into both of those same methods, it works for CListBox, but now for CMyList.
|
|
|
|
|
thebeekeeper wrote: I'm using the same CA2W conversion
Why did you switch to CA2W, when the generic CA2CT was the
appropriate conversion?
Again, why is the conversion even necessary? Do you really
need to use char type strings anywhere? char has been pretty much
obsolete for a decade
Mixing hardwired character types and generic types causes
problems like these, which is why I recommend using the
generic types.
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
|
What is the best way to embed hard data directly to a chip (preferably using C++)?
|
|
|
|
|
claytoncruppenink wrote: What is the best way to embed hard data directly to a chip
Buy a scalpel.
i.e. you should at least be more specific.
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
can you please indicate the procedure to buy a scalpel and how I can use it in C++ with a chip please.
thx, it's urgentzzzzz
|
|
|
|
|
okay, but only if you iz abuzing drugz
|
|
|
|
|
Do you want codez with that?
Regards,
--Perspx
Don't trust a computer you can't throw out a window
-- Steve Wozniak
|
|
|
|
|
Ready-to-use code at
www.cpallini.freeproductz.com[^]
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
I think your magic site is very helpful here.
|
|
|
|
|
Hamid. wrote: I think your magic site is very helpful here.
Indeed.
OT: Hamid it has been a long time since I saw one of your posts, how do you do?
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
I had a good trip,I decided to see some eparchys in iran of north till center,it was very good,two different weathers at north eparchys weather was rainy and humid,rainy is not problem but humid was very bad (and my camera is ruined now)but it's great and verdurous,at center weather was very hot and dry but I think my city is better than of them you can see famous historical mosques, and bridges in this city and it has beautiful paintings,valuble carpets and handiwork,I believe isfahan and italia are near together.BTW did you read this book Italia ed esfahan(angelo michele PIEMONTESE).
|
|
|
|
|
I'm very glad you had wonderful holidays in Iran. I haven't read that book (it is the very first time I hear about it: unfortunately I read almost only technical stuff!).
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
So you are a professinal man in computer.
|
|
|
|
|
Nope, I said: "I read technical stuff" (never said I understand it).
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
|
Ok, say i have an int array[10] that is populated with data. So at max i will have 32 * 10 = 320 bits. Then i have to take those 40Bytes of data and "download" it to an embedded chip (completely independent of a PC and its OS). Is there a c++ api that will allow me to embed a chip with the data?
|
|
|
|
|
USB HID sounds like the closest thing you'll find to this. Or just sending bytes through the parallel port. When you get to that low level, there's really nothing that's independent of a PC and its OS.
Also, looking for a C++ api for this kind of thing is sort of a dead end. You have to program for the embedded chip you're working with. Hopefully whoever made this chip would have also created a way to send data to it. If it's a microcontroller that has some flash memory, there's probably a SPI interface.
|
|
|
|
|
What you realy need is an eprom programmer. That's a piece of hardware you buy in Radio Shack etc. That normally comes with it's own interface, instructions, manuals, methods, etc. Some 30 years ago they provided a service where for a fee, they would sell you the chips with your data 'blown' in. you sent them your data in a hex-file on a floppy. I've no idea if that kind of service is still available.
Success,
Bram van Kampen
|
|
|
|
|
The problem is I have 8 root nodes. By default the program is focused on the 1st root node. Whenever I click on any other root node (or their descendants), the program is still indexing the 1st root node.
The reason seems to be how one can highlight a node via the keyboard arrow keys. If I use the keyboard to highlight a different node, then the focus is changed. Mouse clicks seem to do absolutely nothing with changing the focus to a different node.
I am wondering how I can force my app to change whatever node it is currently focused on to the one the user specifies by left-clicking with their mouse. The "mouse click" focus is currently non-existent, and the keyboard focus is what is driving things which is what I do not want.
BOOL CViewFilter::OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult)
{
CDialog::OnNotify(wParam, lParam, pResult);
if (wParam == IDC_TREE1)
{
NMHDR *pHdr = (NMHDR *)lParam;
if (pHdr->code == NM_CLICK)
{
HTREEITEM hItem = m_filterTreeCtrl.GetSelectedItem();
if ((hItem != 0) && (m_filterTreeCtrl.GetCheck(hItem) == 0))
{
SetDecendentNodesOn(hItem);
}
else if ((hItem != 0) && (m_filterTreeCtrl.GetCheck(hItem) == 1))
{
SetDecendentNodesOff(hItem);
}
}
}
return CDialog::OnNotify(wParam, lParam, pResult);
}
|
|
|
|
|
Looks like you changed the sample code I sent you
in a previous post
You're calling the base class OnNotify twice (BAD!).
Always look at the docs for message handlers and return
the appropriate value.
In this case, you should return non-zero if you handle the message,
otherwise call the base class...
BOOL CViewFilter::OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult)
{
if (wParam == IDC_TREE1)
{
NMHDR *pHdr = (NMHDR *)lParam;
if (pHdr->code == NM_CLICK)
{
HTREEITEM hItem = m_filterTreeCtrl.GetSelectedItem();
if ((hItem != 0) && (m_filterTreeCtrl.GetCheck(hItem) == 0))
{
SetDecendentNodesOn(hItem);
}
else if ((hItem != 0) && (m_filterTreeCtrl.GetCheck(hItem) == 1))
{
SetDecendentNodesOff(hItem);
}
return TRUE;
}
}
return CDialog::OnNotify(wParam, lParam, pResult);
}
I still don't think NM_CLICK is the notification you're looking for...
Have you seen the Tree View Control Docs[^]?
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Yes, I did change the code around.
Someone here at work suggested I use a call to OnNotify from the base class because since I was overriding OnNotify, the call to the overridden function would handle all the other stuff I'm not handling.
I've tried using other notifications and nothing seems to work. The other thing I'm trying to do away with is cutting the umbilical cord to the default indexing of nodes by way of the rectangular region which pops up when you use the arrow keys on the keyboard.
If I don't use NM_CLICK, the only other thing I can do is the node changing states, but I think the above problem is compounding the issue I'm observing.
|
|
|
|
|
Stuck At Zero wrote: since I was overriding OnNotify, the call to the overridden function would handle all the other stuff I'm not handling
Right, but you were calling the base class BEFORE handling the
notification and afterwards as well. You should also return TRUE
when you handle a notification.
Stuck At Zero wrote: I've tried using other notifications and nothing seems to work.
It depends on what you want to do. There's a lot of more specific
notifications for a tree view control that may be more appropriate than
the generic NM_CLICK notification, which is sent when the user clicks
anywhere on the control. That notification may come BEFORE the control
changes the selected item, which will mess up your handler logic.
In your previous post, you needed to load child nodes when an item was
expanded. What else are you wanting to do?
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|