|
Harsh
But I have to agree w'tch ya.
without being flamed of course!
"..Even my comments have bugs!"
Inspired by Toni78
|
|
|
|
|
How do you change the printer orientation once it has started?
I have used the samples that I can find on MSDN, but it does not change the orientaion. Like the MFCDVMD example. I use the DocumentProperties API and set the orientation, and it still does not work. I even tried ResetDC with the DEVMODE structure that I get back from DocumentProperties. Zippo!
Anyone have any suggestions?
Thanks in advance.
--Larry
|
|
|
|
|
Wrongwayf16 wrote:
How do you change the printer orientation once it has started?
You can't. If you need to do that, simulate it in your program (rotate all your drawing by 90 degrees). I think there's an article either here or at CodeGuru for a class called CRotDC which lets you draw as normal, and then rotate the entire image by a multiple of 90 degrees. That should help .
Ryan
Being little and getting pushed around by big guys all my life I guess I compensate by pushing electrons and holes around. What a bully I am, but I do enjoy making subatomic particles hop at my bidding - Roger Wright (2nd April 2003, The Lounge)
Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late - John Nichol "Point Of Impact"
|
|
|
|
|
Ryan,
Thanks for the reply. I will go take a look at CRotDC. I can change the orientation of the page in mid stream, the problem is that I only see text. I do not see any graphics. Like lines, rectangles, pics, ect...
I think I maybe corrupting the DEVMODE before I call ResetDC. If you have anymore suggestions or pointers to articals to help I would appericate it.
--Larry
|
|
|
|
|
It seems my reply wasn't totally accurate
ResetDC can be used after StartPage() to change the print orientation, but I can't remember ever getting it to work. I've just rotated the graphics output in software.
Perhaps I was just doing it the wrong way
Ryan
Being little and getting pushed around by big guys all my life I guess I compensate by pushing electrons and holes around. What a bully I am, but I do enjoy making subatomic particles hop at my bidding - Roger Wright (2nd April 2003, The Lounge)
Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late - John Nichol "Point Of Impact"
|
|
|
|
|
It helps to reset the DC with the proper map modes! D'OH!
--Larry
|
|
|
|
|
Hello!
Does anyone know how can I catch the SetFocus event on a richedit control?
I tried with SetEventMask, I can catch mouse events, but what I need is to not allow
the user to set focus on a richedit.
Thanx.
Enis Arif
-----------
"I am enough of an artist to draw freely upon my imagination. Imagination is more important than knowledge. Knowledge is limited. Imagination encircles the world." (Albert Einstein)
|
|
|
|
|
just catch WM_COMMAND in parent window and check for EN_SETFOCUS.
Magnus
|
|
|
|
|
Thank you. Works great!
Enis Arif
-----------
"I am enough of an artist to draw freely upon my imagination. Imagination is more important than knowledge. Knowledge is limited. Imagination encircles the world." (Albert Einstein)
|
|
|
|
|
Hello people,
I need some help, i want to know how to store ,add, subtract and multiply 128 bit numbers.
Thank you
OMAR ALVI
|
|
|
|
|
See if the DECIMAL data type will do what you need. While not 128 bits, its variables are stored as 96-bit (12-byte) unsigned integers scaled by a variable power of 10.
Another option is to treat the numbers as strings and operate on them one at a time. In other words, multiplying "9182887099" by "4058780506" would produce "37271323146220092094". This can be extended to an infinite number of digits.
|
|
|
|
|
You can use the big number library available in openSSL .
Enis Arif
-----------
"I am enough of an artist to draw freely upon my imagination. Imagination is more important than knowledge. Knowledge is limited. Imagination encircles the world." (Albert Einstein)
|
|
|
|
|
Thanks, i know that there are some libraries available but actually i wanted to write my own class. Any help will be greatly appreciated.
Thank you
|
|
|
|
|
Hello,
I am trying to scroll a CListCtrl. I have the number of the item which should be displayed at the top (so not in the middle, the bottom or anything else...). If it is possible, the item should be on top (sure, if it's one of the last lines, this isn't possible).
I tried various ways but none of them worked.
1) I used EnsureVisible twice. First ensure that the last item is visible and then make a second call to the final item. I thought Windows would internally scroll to the end and then from the end up to the item. But it didn't work. Either it scrolled simply to the end, or it does nothing (randomly).
2) I tried to use the Scroll function, but it scrolls randomly Although I am pretty sure that I calculated the scroll amount correctly...
Do you have a short code snippet that scrolls to a specific item so it's at the top visible? How do you do it?
Thanks
-Dominik
_outp(0x64, 0xAD);
and
__asm mov al, 0xAD __asm out 0x64, al
do the same... but what do they do??
|
|
|
|
|
EnsureVisible has always worked for me in the past. Perhaps you should only call it once for the item that you really want to see.
onwards and upwards...
|
|
|
|
|
You do realise that Scroll() scrolls in pixels, not in items, don't you?
Just checking
Ryan
Being little and getting pushed around by big guys all my life I guess I compensate by pushing electrons and holes around. What a bully I am, but I do enjoy making subatomic particles hop at my bidding - Roger Wright (2nd April 2003, The Lounge)
Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late - John Nichol "Point Of Impact"
|
|
|
|
|
Yes, I realised that Scroll wants pixels
It works now with EnsureVisible. I calculated the last item not correctly, I calculated the lastitem+1=count as last item
-Dominik
_outp(0x64, 0xAD);
and
__asm mov al, 0xAD __asm out 0x64, al
do the same... but what do they do??
|
|
|
|
|
Dominik Reichl wrote:
It works now with EnsureVisible
Using Scroll() is just a PITA. How were you calculating the line height to do it? I probably would have used GetItemRect() and CRect::GetHeight() .
Dominik Reichl wrote:
I calculated the lastitem+1=count as last item
Yeah, that would stop it working
Ryan
Being little and getting pushed around by big guys all my life I guess I compensate by pushing electrons and holes around. What a bully I am, but I do enjoy making subatomic particles hop at my bidding - Roger Wright (2nd April 2003, The Lounge)
Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late - John Nichol "Point Of Impact"
|
|
|
|
|
Ryan Binns wrote:
How were you calculating the line height to do it? I probably would have used GetItemRect() and CRect::GetHeight().
Nearly I've done exactly what you said, plus I added 1 to the item size because it looks like Windows adds a one-pixel line as spacer (at least on my Win98).
-Dominik
_outp(0x64, 0xAD);
and
__asm mov al, 0xAD __asm out 0x64, al
do the same... but what do they do??
|
|
|
|
|
Dominik Reichl wrote:
I've done exactly what you said, plus I added 1 to the item size because it looks like Windows adds a one-pixel line as spacer
Nope, Windows doesn't add a pixel to it. It's the stupid calculation that GetHeight() uses: (bottom - top) . The actual height should be (bottom - top + 1) . A rectangle where top=0 and bottom=1 is actually 2 pixels high, but GetHeight() returns 1. I don't know why CRect was written this way, but it was.
Ryan
Being little and getting pushed around by big guys all my life I guess I compensate by pushing electrons and holes around. What a bully I am, but I do enjoy making subatomic particles hop at my bidding - Roger Wright (2nd April 2003, The Lounge)
Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late - John Nichol "Point Of Impact"
|
|
|
|
|
Is it possible to set the selection of text in two separate CEdit boxes at the same time? In order to highilght the first box, I use
m_approach1C.SetFocus();//set focus
m_approach1C.SetSel(0,-1);//select entire text
I must call SetFocus() for this to work, but I cannot set the focus to 2 CEdit boxes at the same time, so if I do this...
m_approach0C.SetFocus();//set focus to box 1
m_approach0C.SetSel(0,-1);//select all text in box 1
m_approach1C.SetSel(0,-1);//select all text in box 2
only the first CEdit control selects the text.
If I cannot do this, is there a way to change the background color of a CEdit box?
"Because without beer, things do not seem to go as well."
Kevin Shaffer
kshaff03@msn.com
|
|
|
|
|
Only one control (a.k.a. window) may have the focus at one time.
As for changing the background color, a search of code project should give you the answer. Try searching for things like the following: "edit control backgound color", "custum edit controls", "custum contols", and take a look at the totorials.
Trust in the code Luke. Yea right!
|
|
|
|
|
As John said, only one control can have the focus at once. Edit controls only show their selection when they have the focus, so if only one control can have focus, then only one edit control shows its text as selected. You can select text in both edit boxes, but only one will show up as selected.
kshaff03 wrote:
If I cannot do this, is there a way to change the background color of a CEdit box?
Yes. Handle WM_CTLCOLOR in your dialog. Look at the docs for more information. There are plenty of articles around as well.
Ryan
Being little and getting pushed around by big guys all my life I guess I compensate by pushing electrons and holes around. What a bully I am, but I do enjoy making subatomic particles hop at my bidding - Roger Wright (2nd April 2003, The Lounge)
Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late - John Nichol "Point Of Impact"
|
|
|
|
|
Hello,
I was trying out one of the articles I read here about subclassing. The article can be found at http://www.codeproject.com/miscctrl/subclassdemo.asp#xx524121xx
I have subclassed CButton and have a new class, CMyButton. Now, I added all of the functionality that I want to CMyButton and want to subclass my CButtons.
In my app I have some CButtons that are dynamically created. The user hits "Add Button" in the menu and the button appears. This is what I tried to do in order to subclass the button:
m_buttons[m_numButtons].Create(Source,WS_VISIBLE|WS_TABSTOP|BS_FLAT|<br />
BS_PUSHBUTTON|BS_ICON|BS_VCENTER, r, MainWnd,IDC_MAIN_BUTTON + m_numButtons);<br />
<br />
CWnd *pWnd = GetDlgItem(IDC_MAIN_BUTTON + m_numButtons); <br />
ASSERT(pWnd && pWnd->GetSafeHwnd());<br />
m_btnMyButton.SubclassWindow(pWnd->GetSafeHwnd());<br />
However, the bold line gives me an assertion error in WinCore.cpp:
ASSERT(FromHandlePermanent(hWndNew) == NULL);
// Must not be already in permanent map
I read at Microsoft that this implies that the control that I am attempting to subclass has already been subclassed.
Does anyone know how I can resolve this problem?
Also, in CMyButton::DrawItem I have the button turn yellow, just as the article says. However, how can I make it so the button is drawn with all of the styles I have indicated when I created the button? What I have in DrawItem is exactly as in the article but button styles are not handled in the article. For example, I want a flat, icon button that is a tab stop, but the button is drawn as a usual button and unable to be tabbed to. What do I have to add to my DrawItem function to get it to make the button flat, display the icon, and be a tab stop and have any other styles that I added when I created the original CButton, before it was subclassed?
If you have any questions please let me know.
Thanx,
-Flack
|
|
|
|
|
I believe that your issue is that when you created the buttons via the CButton class, it already has it "subclassed" to MFC wndproc. Subclassing is used to hook windows that have already been created by other means.
onwards and upwards...
|
|
|
|