 |
|
 |
If used on a dual screen system - doesn’t work on second screen.
|
|
|
|
 |
|
 |
Ok this message feels as though its from the future for this project
The project dosent compile under VS2009 return type missing SystemTraySDK.hpp
// Create the tray icon
BOOL Create(HINSTANCE hInst, HWND hParent, UINT uCallbackMessage, LPCTSTR szTip,
The BOOL is missing
|
|
|
|
 |
|
 |
... you see the magnification window in the newly created magnification window, so to speak.
|
|
|
|
 |
|
 |
Hello,
I like very much your magnifying glass application. Is it possible for me to include it in a freeware developpement ? Do I need to include some licensing information in my software if I use it ?
What is the legal status of this code ?
Thank you for your answer
|
|
|
|
 |
|
 |
According to the The Code Project Open License (CPOL), this code is absolutely free for use in any type of applications. You may decide, if you want, to provide link to this article in your program About Box or documentation.
|
|
|
|
 |
|
 |
Very nice.
Just one thing I need. I need to be able to show live updating of the screen, for example, a flashing gif. From what I have seen from Zoomplus, this is also not implemented (but surprisingly. the windows-packaged magnifier updates perfectly! Incredible but true). Regards.
|
|
|
|
 |
|
 |
As you can see from the program algorithm, it takes screenshot when magnifying glass is activated, and shows static image all time when the glass is active. To make dynamic update, it is necessary to implement dynamic refresh by timer, this can cause flickering. Currently I don't have plans to update this program, it remains nice toy from good old days of unmanaged programming.
|
|
|
|
 |
|
 |
Thanx!
A very pretty little utility for all of us in GUI develeopment. I bet Chris Maunder would have loved it during his "hours of squinting at pixels" while working on his superbly fantastic CGridCtrl. Well done!
_____________________________________
Action without thought is not action
Action without emotion is not life
|
|
|
|
 |
|
 |
This is an immediate requirement for my project.We had an image file on the web page, according to the requirement when we
click the mouse om the specified text we should get magnification of that specified text.....
I would be appreciate if anyone help to get that code and an activex control for that magnification
|
|
|
|
 |
|
 |
Lets say I wanted to keep the mouse active and visible in the magnified area.
In other words, rather than the program taking control of the mouse functions to turn the lens on and off, the mouse would still be active on the desktop (or any other windows), and the lens would be on all the time (magnifying the area around the mouse cursor).
How would I go about doing that?
Great prog btw, I searched forever for something just like it (w/ source code).
-barcibus
|
|
|
|
 |
|
 |
Hi, barcibus. I don't see a way to do this modifying the existing code. Invisible window used in this application handles all mouse activity. There are a lot of restrictions in this approach, we have only static magnification without interaction with the desktop.
|
|
|
|
 |
|
 |
Ahh... I feared as much. Thanks for the reply anyhow!!!
-barcibus
|
|
|
|
 |
|
 |
You have extraordinary talents!!
William
|
|
|
|
 |
|
 |
To fix the bug reported by Remon:
1) Add constructor to GLOBAL_VARIABLES structure:
struct GLOBAL_VARIABLES
{
GLOBAL_VARIABLES() : bMouseButtonPressed(FALSE)
{
}
};
2) Remove line
memset(&g_Variables, 0, sizeof(GLOBAL_VARIABLES));
from WinMain function.
Remon, thank you for bug report.
|
|
|
|
 |
|
 |
Even though I followed your instructions, the program worked well for me before I made the changes.
Nevertheless, by only initializing one variable in the constructor of the GLOBAL_VARIABLES structure, aren't you leaving the other variables uninitialized? (Afterall, you also removed the "memset" instruction from WinMain.)
William
|
|
|
|
 |
|
 |
You are right, but all other variables are initialized later. I added bMouseButtonPressed variable initialization to struct constructor. Other variables may be initialized there too, for safety. Thank you.
|
|
|
|
 |
|
 |
In your code,
- the default constructor of GLOBAL_VARIABLES is called first for the global instance (ie: g_Variables).
- This default constructor calls each member constructor.
- For int, RECT, BOOL, the default constructor does nothing leaving the variable with an unpredictable value.
- Since the CSystemTray constructor exists, it is called for the SystemTray member. Note that some members are not NULL after initialization (ie: m_DefaultMenuItemByPos, ...)
- Once all global scope variables are initialized, the WinMain() is called
- Then you reset to zero the memory used by the g_Variables structure. Here is the bug !!!
First visible thing is that all the SystemTray members are nullified.
Second thing (harder), since this class uses virtual member, invisible member (vtable) is also resetted to zero.
You'd better use a constructor for your GLOBAL_HANDLES & GLOBAL_VARIABLES... and initialize each member as desired.
struct GLOBAL_VARIABLES
{
GLOBAL_VARIABLES()
{
bMouseButtonPressed = FALSE;
nScreenX = 0;
...
}
BOOL bMouseButtonPressed; // used in mouse capture window
...
};
And remove the memset() in your WinMain() used to initialize both global structures...
|
|
|
|
 |
|
 |
Thank you, I will check this.
|
|
|
|
 |
|
|
 |
|
 |
That's a great tool. I would suggest adding a configurable system hot key to activate/deactivate the magnifyer.
Todd Smith
|
|
|
|
 |
|
 |
This is not exactly what your example does, but I was hoping that you might be able to give me some ideas.
I want to be able to render HTML files using a browser in a hidden window and then StretchBlt the scaled results into my own window.
I have tried to "Hide" the browser window, but when I get the window handle and HDC/Device Context, it's justs contains the screen image and not the contents of the web page
Any ideas?
Pat
|
|
|
|
 |
|
 |
I'm pretty sure you can use IWebBrowser2 to render to a device context.
Todd Smith
|
|
|
|
 |
|
 |
No, it doesn't.
But QHTM (on this site I think), or codeguru.com, or gipsysoft.com does.
Just looked, it's on http://www.gipsysoft.com/
|
|
|
|
 |
|
 |
http://www.gipsysoft.com/zoomplus/
|
|
|
|
 |
|
 |
Zoom+ didnt work on my win98 machine. It may not work on others.
The application installs ok. Sarts up ok. Even somewhat runs. You can toggle toolbar and status bar. Play with the options. However, it doesnt zoom properly at all. The zoom screen just smears into a mess and and the update acts like the locations are incorrect and grabbing random sections of the screen.
I downloaded along time ago when it was shareware on my NT 4 machine and it worked great.
The Website doesnt list what systems you can use, but you can roll your dice if you want and see if it works.
|
|
|
|
 |