|
You'll need to subclass the list control and reflect the L-click message so you can handle (see the list control classes at CP for examples). In the L-click handler, add the item to the list of selected ones by doing:
SetItemState (nItem,
LVIS_SELECTED | LVIS_FOCUSED,
LVIS_SELECTED | LVIS_FOCUSED); /ravi
My new year's resolution: 2048 x 1536
Home | Articles | Freeware | Music
ravib@ravib.com
|
|
|
|
|
Hi guys,
Just encountered a small problem with ADO when trying to read data from two tables in a database that have the same variable names. In my example I have table_1 with a variable called "id" and a table_2 which also has a variable called "id". The id's in each table are not related. I then want to execute a mysql query something like this:
select table_1.id, table_1.country, table_2.id, table_2.country \
from table_1,table_2 where table_1.country=table_2.country
In this case I am matching table_1 to table_2 by country. So far so good. The problem comes when I want read back the values using this method:
var_1 = (long *) (_bstr_t)pRecordSet->GetCollect("id");
In this line above, how does ADO know which id value I am referring too?? I tried this:
var_1 = (long *) (_bstr_t)pRecordSet->GetCollect("tablel_1.id");
var_2 = (long *) (_bstr_t)pRecordSet->GetCollect("tablel_2.id");
.. but it didn't like "tablel_1.id" How can I distinguish between the two if tables contain the same variable names? In this case "country" is the same in both tables, so that one doesn't matter, but id dcoes. I can't find any example anywhere in books or the web. All the examples seem to have tables with completely different variables names and hence do not have this problem.
Help anyone?, I would be very grateful.
Graham.
|
|
|
|
|
Try using column aliases. For example your query can be written as:
<code>SELECT</code> table_1.id <code>AS</code> id1, table_1.country, table_2.id <code>AS</code> id2, table_2.country
<code>FROM</code> table_1,table_2
<code>WHERE</code> table_1.country=table_2.country;
and then, try using "id1" and "id2" to retrieve values.
Arsalan Malik
|
|
|
|
|
That's great, thanks!
Graham.
|
|
|
|
|
My MDI app runs in one of 2 modes (detected in the app's InitInstance() ). In "regular" mode, I'd like the mainframe window to use the standard IDR_MAINFRM menu. When the app is in "special" mode, I want it to use an alternate menu (eg: IDR_MAINFRM_SPECIAL ).
It's easy enough to provide conditional menus for my views, since I can just specify the appropriate menu id when I create the MultiDocTemplate s. But how do I switch the mainframe window's menu?
A gentle nudge would greatly help this sleep deprived developer.
PS: Btw, I'm using Bruno's NewMenu[^]
/ravi
My new year's resolution: 2048 x 1536
Home | Articles | Freeware | Music
ravib@ravib.com.
|
|
|
|
|
|
|
Someone gave me this COM DLL to use in my project (co-worker).
The DLL is written in VB.
After doing the #import, I cannot compile. There are references to a "_ErrObjecPtr" (ErrObject smart ptr).
But the ErrObject doesn't resolve in C++...
Any clues out there?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br />
Peter Weyzen<br />
Staff Engineer<br />
<A HREF="http://www.santacruznetworks.com">Santa Cruz Networks</A>
|
|
|
|
|
I have set the item in a ListCtrl via the statement:-
m_cListCtrl.SetItemState(m_nSelectItem, LVIS_SELECTED, LVIS_SELECTED | LVIS_FOCUSED);
But how do you arrange for the item to be shown as selected as if it was selected by a mouse click?
grahamfff
|
|
|
|
|
m_cListCtrl.SetItemState
(m_nSelectItem,
LVIS_SELECTED | LVIS_FOCUSED,
LVIS_SELECTED | LVIS_FOCUSED); /ravi
My new year's resolution: 2048 x 1536
Home | Articles | Freeware | Music
ravib@ravib.com
|
|
|
|
|
Did try your suggestion but nothing highlighted.
Are they any additional properties I need to set?
grahamfff
|
|
|
|
|
I did also try and modify the CodeProject sample ListCtrlDemo as floows but no luck:-
void CListCtrlDemoDlg::OnItemSelect() <br />
{<br />
UpdateData(TRUE);<br />
<br />
int nCount = m_cListCtrl.GetItemCount();<br />
if (m_nSelectItem >= nCount)<br />
{<br />
AfxMessageBox(_T("You entered an out of range index."));<br />
m_nSelectItem = 0;<br />
}<br />
else<br />
{<br />
m_cListCtrl.EnsureVisible(m_nSelectItem, FALSE);<br />
m_cListCtrl.SetItemState(m_nSelectItem, LVIS_SELECTED | LVIS_FOCUSED, LVIS_SELECTED | LVIS_FOCUSED);<br />
}<br />
UpdateData(FALSE);<br />
<br />
}
grahamfff
|
|
|
|
|
i am also having the same problem as this guy :P
thanks
Tyrus
|
|
|
|
|
Just got it working:-
m_cDisplayList.SetItemState(m_nSelectedList, LVIS_DROPHILITED | LVIS_SELECTED, LVIS_DROPHILITED | LVIS_SELECTED);
grahamfff
|
|
|
|
|
how do you make it multi select like a list box? instead of needing to hold ctrl
|
|
|
|
|
Try
<br />
DWORD dwStyle = m_cListCtrl.GetExtendedStyle();<br />
dwStyle |= LVS_EX_FULLROWSELECT;m_cListCtrl.SetExtendedStyle(dwStyle);
grahamfff
|
|
|
|
|
I have set the item in a ListCtrl via the statement:-
m_cListCtrl.SetItemState(m_nSelectItem, LVIS_SELECTED, LVIS_SELECTED | LVIS_FOCUSED);
But how do you arrange for the item to be shown as selected as if it was selected by a mouse click?
grahamfff
|
|
|
|
|
|
Sorry for this post, but I cannot find anything about this in WWW.
I am adding a function with struct variable (using wizard function add) typing
Function(struct*) and I am getting this:
Function ($S1) in cpp and Function(struct *) in the h file.
Of course, the compiler complains about missing definition.
Is this a known bug?
Thanks Vaclav
|
|
|
|
|
Odd. What steps do I need to do in order to reproduce it?
"When I was born I was so surprised that I didn't talk for a year and a half." - Gracie Allen
|
|
|
|
|
hi, is there a programmatic way to override the setting you see in Date/Time Properties (Time Zone) for "Automatically adjust clock for daylight saving changes"?
What i notice, even with using GMT+0 Universal Coordinate Time time-zone, is that this setting still effects the representation of local time.
I am familiar with the TZ environment variable and also using this with the _tzset() function. Here is a summary of my findings:
TZ = GMT+0GMT<br />
Time Zone set to (GMT) Greenwich Mean Time: Dublin, Edinburgh, London<br />
CHECKED - Automatically adjust clock for daylight saving change<br />
calling _tzset() then calling the fns (yielded)
GetTimeZoneInformation(&tzInfo) ==> TIME_ZONE_STANDARD and<br />
GetTimeZoneInformation(&tzInfo) ==> TIME_ZONE_DAYLIGHT<br />
for local date/times in respective daylight saving range. WHY????
johnny
|
|
|
|
|
I'm not following the problem here. What is happening versus what you think should happen?
john john mackey wrote:
calling _tzset() then calling the fns (yielded)
GetTimeZoneInformation(&tzInfo) ==> TIME_ZONE_STANDARD and
GetTimeZoneInformation(&tzInfo) ==> TIME_ZONE_DAYLIGHT
How does calling GetTimeZoneInformation(&tzInfo) yield TIME_ZONE_STANDARD and TIME_ZONE_DAYLIGHT ? Did tzInfo change in between calls?
"When I was born I was so surprised that I didn't talk for a year and a half." - Gracie Allen
|
|
|
|
|
With the "Automatically adjust for daylight saving changes" set (checked), even if I select Greenwich Mean Time (UTC, Zulu, etc...) the GetTimeZoneInformation(&tzInfo) still returns either TIME_ZONE_STANDARD or TIME_ZONE_DAYLIGHT (depending on the time setting).
It is my assumption that Greenwich Time does NOT observe daylight saving (do the Brits in Greenwich observe Daylight Saving). I thought that Greenwich or UTC is the reference point for time in the world, and thus the time zones. I thought UTC should not itself distinguish its time between TIME_ZONE_STANDARD or TIME_ZONE_DAYLIGHT.
The test i tried were with times on 09 Sep 2004 (or a "daylight time") and 09 November 2004 (a "standard time"). I expected to see only one result from GetTimeZoneInformation(&tzInfo).
Johnny, (still )
|
|
|
|
|
The confusion is the double use of GMT to define 'time' and 'time zones'.
I am in London - UK (10 miles from Greenwich). My Windows time zone is set to (GTM). Local time here is 18:15:31. But GMT is 17:15:31, an hour behind. This is because in the UK (like the US) we observe 'day light saving', so in the 'summer half' of the year we are one hour ahead of GMT. But this does not change our time zone which is still (GMT)
General rule is that your local time only corresponds to your selected Windows GMT timezone during the winter months. For the summer months it is your GMT zone + 1.
|
|
|
|
|
Thanks for the clarification. I had thought that Microsoft had a time zone for "GMT" or UTC, aka, "Zulu" time - the one that does not switch due to Daylight Saving.
Anyways, still looking for a programmatic way to set the "Automatically adjust clock for daylight saving changes" check-box in Date/Time, Time Zone properties.
Regards,
Johnny
USA
|
|
|
|