++ for showing the hard way of doing things ;)
Win32::Guitest makes it easier to do the same API calls... This program does the same thing without all of the return messages. (I didn't see the point for this simple exercise.)
Start calculator before running this code (mode doesn't matter)
#! C:/perl/bin/perl
use strict;
use warnings; # Win32::GuiTest doesn't like -w
use Win32::GuiTest qw(FindWindowLike SetForegroundWindow SendKeys Push
+Button);
my @windows = FindWindowLike(0, "^Calculator"); # find all calculator
+windows
die "Start Calc before running this example.\n" unless @windows;
my $hwnd = $windows[0]; # we'll just the first match
SetForegroundWindow($hwnd); # Bring it the foreground
SendKeys("%VS"); # switch to scientific mode
# press these buttons
foreach my $button ("Hex", "Dec", "Oct", "Bin") {
sleep(2);
PushButton($button);
}
See how much simpler that is? Win32::API is great if it can't be done another way.
Update: Added the die statement to my code.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
Outside of code tags, you may need to use entities for some characters:
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.
|
|