|
thanks hamid...your post were really very helpful.
i have completed my task successfull and its working fine.
thanks and all the very best
|
|
|
|
|
Thank you vikas.
Of one Essence is the human race
thus has Creation put the base
One Limb impacted is sufficient
For all Others to feel the Mace
(Saadi )
|
|
|
|
|
I have loaded images in the Thumbnail dialog and also i have added background color. But in vertical scroll the dialog is not getting repainted.Can anyone please help me. I have enclosed the source code here.
<pre>
CBitmap Background;
CBrush BrushHol;
CSize bitmapSize;
In OnInitDialog,
ShowWindow(SW_SHOWNORMAL);
Background.LoadBitmap(IDB_BITMAP1);
BITMAP bm;
Background.GetBitmap(&bm);
bitmapSize = CSize(bm.bmWidth, bm.bmHeight);
In onpaint,
CDC dcMemory;
dcMemory.CreateCompatibleDC(cdc);
CBitmap* pOldbitmap = dcMemory.SelectObject(&Background);
CRect Client;
GetClientRect(Client);
const CSize sbitmap = bitmapSize;
cdc->BitBlt(0,0,sbitmap.cx,sbitmap.cy,&dcMemory,0,0,SRCAND);
dcMemory.SelectObject(Background);
In vertical scroll,
if( Background.m_hObject != NULL )
{
InvalidateRect(Client,TRUE);
}
|
|
|
|
|
I have loaded images in a thumbnail dialog and i added background color to thumbnail dialog.But in vertical scroll, Thumbnail dialog is not getting re-painted.can anyone please tell me how to repaint the thumbnail dialog during vertical scroll.
<pre>
CBitmap Background;
CBrush BrushHol;
CSize bitmapSize;
In initdialog
CDC dcMemory;
dcMemory.CreateCompatibleDC(cdc);
CBitmap* pOldbitmap = dcMemory.SelectObject(&Background);
CRect Client;
GetClientRect(Client);
const CSize& sbitmap = bitmapSize;
cdc.BitBlt(0,0,sbitmap.cx,sbitmap.cy,&dcMemory,0,0,SRCPAINT);
dcMemory.SelectObject(pOldbitmap);
in onpaint
CDC dcMemory;
dcMemory.CreateCompatibleDC(cdc);
CBitmap* pOldbitmap = dcMemory.SelectObject(&Background);
CRect Client;
GetClientRect(Client);
const CSize& sbitmap = bitmapSize;
cdc.BitBlt(0,0,sbitmap.cx,sbitmap.cy,&dcMemory,0,0,SRCAND);
dcMemory.SelectObject(Background);
in Vertical scroll
if( Background.m_hObject != NULL )
{
InvalidateRect(Client,TRUE);
}
</pre>
|
|
|
|
|
When our code, which is not Unicode, is used on a system with DBCS enabled (e.g., Japan), the typed text is not being retrieved from the edit controls properly. For lack of a better-formed question, must I do something special to the edit control (styles) or the code that retrieves the text from that control so that I get the correct text?
Thanks.
- DC
"Love people and use things, not love things and use people." - Unknown
"The brick walls are there for a reason...to stop the people who don't want it badly enough." - Randy Pausch
|
|
|
|
|
What kind of method to get the text of edit control?
GetWindowText?
What kind of text in the edit control?
ANSI or Japanese character?
There's nothing special.
|
|
|
|
|
I've tried SetWindowTextA(...,....) and SetDlgItemTextA(..,...) but nothing works. There must be a command somewhere where you can change on-the-fly messages contained in a Window Pane of a StatusBar. Does someone know how? I'm using VS2008, MFC.
A C++ programming language novice, but striving to learn
|
|
|
|
|
Did you see CStatusBar::SetPaneText?
|
|
|
|
|
Yes that works! I don't know why I didn't see that command, but I'm glad you elightened me. Another question: Is there a way, to "on-the-fly",to enlarge a particular pane so that it fits the needed space for new text?
A C++ programming language novice, but striving to learn
|
|
|
|
|
Larry Mills Sr wrote: I n't know why I didn't see that command
Larry Mills Sr wrote: Is there a wait "on-the-fly" to enlarge a particular pane so that it fits the needed space for new text?
Larry, 50 minutes has passed between your posts. It would take you less than 5 to go read the documentation on msnd.microsoft.com for the class. Logically it's more productive for you to read the documentation than wait for answers in internet forums. So the 50 cent question here is, why do you refuse to read the documentation?
led mike
|
|
|
|
|
Okay, I checked out MSDN Lib rary on CStatusBar class. I found nothing explaining what command to enlarge the Pane for the new Text. Do you know where I can find that out?, or better still, what that command might be?
A C++ programming language novice, but striving to learn
|
|
|
|
|
Larry Mills Sr wrote: Okay, I checked out MSDN Lib rary on CStatusBar class. I found nothing explaining what command to enlarge the Pane for the new Text. Do you know where I can find that out?, or better still, what that command might be?
CStatusBar is not the same class as CMFCStatusBar .
led mike
|
|
|
|
|
Hamid. wrote: Did you see CStatusBar::SetPaneText?
They probably hide that in the documentation eh? Slimy bastards! They should be hung by their balls!
led mike
|
|
|
|
|
led mike wrote: Slimy bastards! They should be hung by their balls!
What makes you think they aren't already?
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
I noticed in MSDN under CMFCStatusBar that there is a SetPaneWidth() but How do you set a particular Pane's width using that command. if my pane is ID_PANE3 how would I set the width on it to fit the length of a CString? (I sure wished they would show examples of this stuff.)
A C++ programming language novice, but striving to learn
|
|
|
|
|
CPane::AdjustSizeImmediate[^]
> The problem with computers is that they do what you tell them to do and not what you want them to do. <
|
|
|
|
|
Yes I see that; but If my pane is ID_PANE3 how would I get focus on it and do this CPane::AdjustSizeImmediate() . How do I set the length(not Width) to equal(in pixels) to a CString?
(An example would be great.)
A C++ programming language novice, but striving to learn
|
|
|
|
|
What i'd try is to call that on the MFCStatusBar itself with TRUE as parameter, so something like:
my_mfc_statusbar.AdjustSizeImmediate(TRUE);
> The problem with computers is that they do what you tell them to do and not what you want them to do. <
|
|
|
|
|
I find that using a function with various arguments uncovers a lot about its usage. Try something like:
mfcStatusBar.SetPaneWidth(ID_PANE3, 500);
"Love people and use things, not love things and use people." - Unknown
"The brick walls are there for a reason...to stop the people who don't want it badly enough." - Randy Pausch
|
|
|
|
|
Program crashed on that command David.
A C++ programming language novice, but striving to learn
|
|
|
|
|
|
It crashed because the ID_PANE3 is not supposed to be there, rather the nIndex of the Pane is supposed to be there. Works okay if set to 250 rather than 500. Thanks David.
A C++ programming language novice, but striving to learn
|
|
|
|
|
Larry Mills Sr wrote: I sure wished they would show examples of this stuff
They do, you just need to stop thinking that you will find a combined example for your specific needs.
Larry Mills Sr wrote: How do you set a particular Pane's width
That is one specific thing which is clearly depicted in the documentation for the class.
Larry Mills Sr wrote: the width on it to fit the length of a CString
Finding the pixel width of string is an entirely separate subject that there are examples for. If you stop looking for combined examples and learn to break your problems down to the individual parts and solve each of them you might find you are more successful in the field of Software Development.
Larry Mills Sr wrote: using that command.
Also, stop using the word "command". Classes have methods, not commands. C libraries have functions, not commands. When you are using text based communications, applying the correct words is extremely helpful.
led mike
|
|
|
|
|
I am apprehensive for you why? because you flagrant their secrets of course I know you are a donor man.
|
|
|
|
|
A Book shop maintains the inventory of books that are being sold at the shop. The list includes details such as author , title
, price , publisher and stock position. Whenever a customer wants a book , the sales person inputs the title and author and
the system searches the list and displays whether it is available or not. If it is not, an appropriate message is displayed. If
it is, then the system displays the book details and requests for number of copies required. If the requested copies are
available , the total cost of the requested copies is displayed ; otherwise the message " REQUIRED COPIES NOT IN
STOCK " is displayed.
Design a system using a class called books with suitable member functions and constructors. Use new
operator in constructiors to allocate memory space required.
Improve the sytem design to incorporate the following features :
a. The price of the books should be updated as and when required. Use a private member function to implement
this.
b. The stock value of each book should be automatically updated as soon as a transaction is completed.
c. The number of successful and unsuccessful transactions should be recorded for the purpose of statistical
analysis. Use static data members to keep count of transactions.
Modify the program to demonstrate the use of pointers to access the members.
|
|
|
|