You can subscribe to this list here.
2001 |
Jan
(226) |
Feb
(139) |
Mar
(156) |
Apr
(95) |
May
(181) |
Jun
(166) |
Jul
(80) |
Aug
(59) |
Sep
(69) |
Oct
(83) |
Nov
(142) |
Dec
(33) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(42) |
Feb
(91) |
Mar
(76) |
Apr
(113) |
May
(67) |
Jun
(68) |
Jul
(37) |
Aug
(41) |
Sep
(16) |
Oct
(135) |
Nov
(51) |
Dec
(21) |
2003 |
Jan
(37) |
Feb
(36) |
Mar
(37) |
Apr
(103) |
May
(68) |
Jun
(70) |
Jul
(77) |
Aug
(12) |
Sep
(9) |
Oct
(53) |
Nov
(88) |
Dec
(63) |
2004 |
Jan
(263) |
Feb
(106) |
Mar
(36) |
Apr
(21) |
May
(21) |
Jun
(34) |
Jul
(33) |
Aug
(34) |
Sep
(35) |
Oct
(21) |
Nov
(43) |
Dec
(63) |
2005 |
Jan
(28) |
Feb
(42) |
Mar
(29) |
Apr
(14) |
May
(41) |
Jun
(20) |
Jul
(65) |
Aug
(136) |
Sep
(41) |
Oct
(74) |
Nov
(34) |
Dec
(94) |
2006 |
Jan
(85) |
Feb
(94) |
Mar
(68) |
Apr
(103) |
May
(66) |
Jun
(51) |
Jul
(24) |
Aug
(56) |
Sep
(57) |
Oct
(85) |
Nov
(73) |
Dec
(68) |
2007 |
Jan
(59) |
Feb
(32) |
Mar
(13) |
Apr
(32) |
May
(36) |
Jun
(36) |
Jul
(64) |
Aug
(35) |
Sep
(19) |
Oct
(10) |
Nov
(13) |
Dec
(20) |
2008 |
Jan
(26) |
Feb
(41) |
Mar
(19) |
Apr
(24) |
May
(16) |
Jun
(33) |
Jul
(34) |
Aug
(4) |
Sep
(11) |
Oct
|
Nov
(26) |
Dec
(23) |
2009 |
Jan
(5) |
Feb
(2) |
Mar
(21) |
Apr
(16) |
May
(13) |
Jun
(6) |
Jul
(34) |
Aug
(2) |
Sep
(1) |
Oct
(7) |
Nov
(5) |
Dec
(24) |
2010 |
Jan
(3) |
Feb
(5) |
Mar
(6) |
Apr
(6) |
May
(14) |
Jun
(6) |
Jul
(1) |
Aug
(12) |
Sep
(10) |
Oct
(9) |
Nov
|
Dec
(2) |
2011 |
Jan
(4) |
Feb
(5) |
Mar
(30) |
Apr
(1) |
May
(2) |
Jun
(5) |
Jul
(3) |
Aug
(2) |
Sep
(3) |
Oct
|
Nov
(6) |
Dec
|
2012 |
Jan
|
Feb
(10) |
Mar
|
Apr
|
May
(1) |
Jun
(3) |
Jul
(1) |
Aug
|
Sep
(2) |
Oct
|
Nov
(2) |
Dec
(4) |
2013 |
Jan
(5) |
Feb
(3) |
Mar
|
Apr
(3) |
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2014 |
Jan
(2) |
Feb
|
Mar
|
Apr
(1) |
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(9) |
Nov
(7) |
Dec
|
2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(4) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2017 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(5) |
Dec
|
2019 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
From: Robert M. <rm...@po...> - 2007-01-02 21:41:34
|
Zach wrote: > I've written a small Win32::GUI app that shows the > number of users logged in to our system. The number is > shown in a notification icon on the system tray. I > would like to add a popup feature where the user can > be notified when a certain event happens, say when the > count of logged in users researches 100. The popups I > am trying to implement are the kind that instant > messaging clients use to notify the user when someone > has signed in/out. Yahoo IM, AIM and MSN all use these > popups that literally popUP from the system tray area > and notify the user of something without taking focus. > I hear this is an extention of the shell notification > API. Any leads on how to do this with perl's > Win32:GUI? I am not aware of a shell extension to do this - I believe that they are just windows under you're app's control. The only tricks are determining the 'working' area of the window, and which corner of the working area to use. The attached code is something I did some time ago (I've sanitised it for posting here). It doesn't copy well with multiple monitors, or if the task bar is set to 'auto-hide'; otherwise I think it should give you everything that you need. You'll need Win32::API (for accessing the SystemParametersInfo() API call - this is now under development again and V0.46 (IIRC) is available - although older versions will probably do. Regards, Rob. #!perl -w use strict; use warnings; ## Some params to allow quick playing with the # most likely options. It would be nice to expose # these on the main window to allow for fiddling # without re-starting my $animate_time = 1000; # ms my $display_time = 5000; # ms my $notify_x = 200; # pixels my $notify_y = 130; # pixels my $notify_text_clr = 0x00FFFF; my $notify_bkgd_clr = 0xD03030; use Win32::GUI 1.05 qw(HWND_TOPMOST SWP_NOSIZE SWP_NOACTIVATE WS_POPUP); # Need Win32::API to get use of the SystemParamtersInfo API call. This # call with the SPI_GETWORKAREA option gets us the desktop rectangle # (of the primary monitor), excluding the areas taken up by the task bar # and any other shell application toolbars - see calc_position() use Win32::API(); Win32::API->Import('user32', 'SystemParametersInfo', 'NNPN', 'N') or die 'Failed to import SystemParametersInfo call'; sub SPI_GETWORKAREA() {0x0030} # Main window for controlling the demo my $mw = Win32::GUI::Window->new( -title => "User Notification", -size => [300,100], ); $mw->AddButton( -name => 'CB', -text => "Toggle notification", -pos => [10,10], -onClick => \&toggle_notification, ); # The notification window that we're really # interested in my $notify = Win32::GUI::Window->new( -size => [$notify_x,$notify_y], -addstyle => WS_POPUP, # Need WS_POPUP, as you can't remove the titlebar from # a window with WS_OVERLAPPED -titlebar => 0, # remove the title bar -toolwindow => 1, # prevent a button appearing in the task bar -topmost => 1, # make sure we're on the top -background => $notify_bkgd_clr, -onMouseDown => \&toggle_notification, -onTimer => \&toggle_notification, ); $notify->AddTimer("HideTimer", 0); $notify->AddLabel( -text => "This notification message will disappear:\r\n" . "(1) After a pre-set time ($display_time milliseconds).\r\n" . "(2) By clicking this window.\r\n". "(3) By clicking the 'toggle' button in the main window.", -pos => [5,5], -width => $notify->ScaleWidth() - 10, -height => $notify->ScaleHeight() - 10, -background => $notify_bkgd_clr, -foreground => $notify_text_clr, ); $mw->Show(); Win32::GUI::Dialog(); undef $notify; exit(0); sub toggle_notification { my $show = !$notify->IsVisible(); my ($x, $y, $dir) = calc_position($show); if($show) { # Showing - set the posistion every time to # (1) ensure we are on top - other apps my well display # widows in the same location # (2) ensure we are in the correct location - the user may # have resized their desktop, or re-docked the task-bar # since we last displayed the window $notify->SetWindowPos( HWND_TOPMOST, $x, $y, 0,0, SWP_NOSIZE|SWP_NOACTIVATE, ); # Set a timer that will go off when it is time # to hide the window $notify->HideTimer->Interval($display_time); } else { # Hiding - turn off the timer - we don't # need it any more $notify->HideTimer->Interval(0); } # Show or hide the window, using animation $notify->Animate( -show => $show, -activate => 0, -animation => 'slide', -time => $animate_time, -direction => $dir, ); return 1; } # Calculate the position that the notification window will be displayed # at, and which direction to perform the animation. sub calc_position() { my ($show) = @_; my ($wa_l, $wa_t, $wa_r, $wa_b) = getWorkingArea(); # Now determine the side of the screen the taskbar is on # (if we can) and set the parameters we want to use. # If we fail to determine the side we want (perhaps a non # standard shell is in use), the use bottom right of the # working area. # TODO: this only uses the primary monitor's working area; # we should really determine which screen the taskbar is # on, and use the working area of that screen. # TODO: this doesn't work correctly with autohide # taskbars either, as they overlap the working area my $class_name = "Shell_TrayWnd"; my $hwnd_taskbar = Win32::GUI::FindWindow($class_name, ''); my ($x, $y, $dir); if($hwnd_taskbar != 0) { my ($tb_l, $tb_t, $tb_r, $tb_b) = Win32::GUI::GetWindowRect($hwnd_taskbar); #print "work Area: $wa_l\t$wa_t\t$wa_r\t$wa_b\n"; #print "task Area: $tb_l\t$tb_t\t$tb_r\t$tb_b\n"; if ($tb_r <= $wa_l) { # Taskbar on Left $x = $wa_l; $y = $wa_b - $notify_y; $dir = $show ? "lr" : "rl"; } elsif ($tb_b <= $wa_t) { # Taskbar on Top $x = $wa_r - $notify_x; $y = $wa_t; $dir = $show ? "tb" : "bt"; } elsif ($tb_l >= $wa_r) { # Taskbar on Right $x = $wa_r - $notify_x; $y = $wa_b - $notify_y; $dir = $show ? "rl" : "lr"; } else { # Taskbar is on Bottom, or not determined $x = $wa_r - $notify_x; $y = $wa_b - $notify_y; $dir = $show ? "bt" : "tb"; } } else { # We didn't find a taskbar, use bottom right $x = $wa_r - $notify_x; $y = $wa_b - $notify_y; $dir = $show ? "bt" : "tb"; } return $x, $y, $dir; } sub getWorkingArea() { my $rect_buffer = pack('llll', 0, 0, 0, 0); my $result = SystemParametersInfo(SPI_GETWORKAREA, 0, $rect_buffer, 0); if ($result == 0) { die "SystemParameterInfo call failed"; } my ($work_l, $work_t, $work_r, $work_b) = unpack('llll', $rect_buffer); return $work_l, $work_t, $work_r, $work_b; } __END__ |
From: Zach <zp...@ya...> - 2007-01-02 14:23:33
|
Good morning, I've written a small Win32::GUI app that shows the number of users logged in to our system. The number is shown in a notification icon on the system tray. I would like to add a popup feature where the user can be notified when a certain event happens, say when the count of logged in users researches 100. The popups I am trying to implement are the kind that instant messaging clients use to notify the user when someone has signed in/out. Yahoo IM, AIM and MSN all use these popups that literally popUP from the system tray area and notify the user of something without taking focus. I hear this is an extention of the shell notification API. Any leads on how to do this with perl's Win32:GUI? Thanks! -Zach __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com |
From: Perl R. <pe...@co...> - 2007-01-02 08:14:55
|
Hi all, I'd like to print inline bitmaps using the Win32::Printer module, but I'm confused by the "$dc" in every one of the documentation examples: ############################# $image_handle = $dc->Image($filename); ($image_handle, $original_width, $original_height) = $dc->Image($filename); or $image_handle = $dc->Image($filename, $x, $y, [$width, $height]); ($image_handle, $original_width, $original_height) = $dc->Image($filename, $x, $y, [$width, $height]); $dc->Image($image_handle, $x, $y, [$width, $height]); or ($width, $height) = $dc->Image($image_handle); ############################# What exactly is $dc, and how/where do I define it? Also...must I specify a filename, or can $image_handle be an inline bitmap? Thanks, Rob P.S. - A special thanks to Richard Noble for sending me a PPD of Win32::Printer built with FreeImage support. |
From: Steve L. <ste...@sc...> - 2006-12-30 17:34:16
|
Hi all Firstly, many thanks to Robert May (again) for a quick flurry of answers to my questions... always appreciated! Secondly, I notice there is a -multiline option for buttons, but I am unable to force my text to "wrap" with the usual "\r\n" entry in the text that I can use in other objects that support the -multiline option. Any ideas? Lastly, it is almost exactly a year (new years day 2006 actually) since I had the first thought about coding my current project (which happens to be my very first win32 programming project ever), and I would just like to take the time to thank all the developers, coders, contributors, and everyone on the list for all their help. This list has been a great source of information and enlightenment for me over the last 12 months, and without it, I am sure I would have given up a long time ago. Keep up the good work! Steve |
From: Perl R. <pe...@co...> - 2006-12-30 00:53:03
|
As it turns out, the problem only occurs on one of my computers. Since not even I can reproduce it on other computers, I don't want to waste the time of anyone on the list. Thanks for the response though, this list has been SO helpful! Thanks, Rob -----Original Message----- From: Robert May [mailto:rm...@po...] Sent: Thursday, December 28, 2006 12:31 PM To: Perl Rob Cc: Win32 GUI Users Mailing List Subject: Re: [win32-gui] [perl-win32-gui-users] Need help repainting window after clicking "Show Desktop" Perl Rob wrote: > Hi all, > > I've discovered a weird problem: if I minimize all open windows by > clicking the "Show Desktop" button (from the Windows Quick Launch > area) right before I run my Win32::GUI program, my program window > opens and paints itself properly, but then immediately "hiccups" and > loses all its images. If I minimize and restore my window, or drag it > off the screen and back on again, it then repaints itself correctly > and everything is fine (I'm drawing the images to the window's DC and > using Window_Paint to keep it painted). That does indeed sound weird. You'll really need to try to produce a short, complete example showing the problem if you want help. > P.S. - I'd be happy to provide sample code off-list (my app is already > past 7000 lines of code with all the inline bitmaps). Shorter, please :-) Regards, Rob. |
From: Jason P. <jp...@da...> - 2006-12-29 14:00:19
|
Glenn Linderman wrote: > On approximately 12/28/2006 9:07 AM, came the following characters > from the keyboard of Jason Plum: >> Thanks Glenn, >> >> There is definately a way to do it with Process, and its ugly >> compared to this. (not to mention you have to dig deep into the real >> APIP to find the option...) >> >> This is just the cleanest, easiest to understand method I could spit >> out in short order. >> > > Right. I didn't give details _because_ they are hard to find. And > your solution should be fine for the OP. But for others, maybe they > want to launch async, and then wait. Process does that better, I > think... I think it is not possible with ShellExecute, but maybe I'm > missing something there. > AFAIK you are correct. I've never read anything about the ability of ShellExecute to do an async wait on the return...Never even that way via the raw windows API. So, for the sake of the archives: This method to be used when an asynchronous process needs to be launched out of the control of perl, via the Win32 API interfaces provided to us by Win32::GUI. #== Win32::GUI::ShellExecute(Win32::GUI::GetDesktopWindow(), [parameters as documented] ); #== -- ================== Jason Plum Head of IT R&D DAJ Strategic Solutions ================== |
From: Brian M. <bmi...@hu...> - 2006-12-29 01:07:46
|
I had basically come to that conclusion. I'm using the normal -tip for = what I wanted. As I was looking at this, I noticed that no other apps pop up = a balloon when hovering over a NotifyIcon. Brian Millham Tommy, Helen and Paka This message has traveled at least 44,000 miles to reach you! http://www.millham.net br...@mi... > -----Original Message----- > From: per...@li... [mailto:perl- > win...@li...] On Behalf Of Robert May > Sent: Thursday, December 28, 2006 2:27 PM > To: Brian Millham > Cc: per...@li... > Subject: Re: [perl-win32-gui-users] [win32-gui] NotifyIcon and > balloontooltips >=20 > Brian Millham wrote: > > Hi all, > > I'm playing with NotifyIcon with Balloon tooltips. (Win32::GUI > > version 1.05) > > Is there a way to display the balloon when the mouse is hovering > > over the NotifyIcon? (like how the -tip text is displayed, except in = a > > balloon) > > > > The only way that I can figure out is to use the MouseEvent event. > > But that fires every time that the mouse is moved (or clicked), so = there > > would have to be a timer to track if the balloon is displayed = (unless > there > > is a method to check if the balloon is already displayed.) >=20 > I can't think of a good way to achieve what you want, especially as > you're not guaranteed that a balloon will display immediately that you > ask for it: if another app has a balloon displayed, then your request > gets queued by the OS, until it takes down the earlier balloon. >=20 > Regards, > Rob. >=20 > = -------------------------------------------------------------------------= > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to = share > your > opinions on IT & business topics through brief surveys - and earn cash > = http://www.techsay.com/default.php?page=3Djoin.php&p=3Dsourceforge&CID=3D= DEVDEV > _______________________________________________ > Perl-Win32-GUI-Users mailing list > Per...@li... > https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users > http://perl-win32-gui.sourceforge.net/ > --- > avast! Antivirus: Inbound message clean. > Virus Database (VPS): 0664-0, 12/28/2006 > Tested on: 12/28/2006 2:34:45 PM > avast! is copyright (c) 2000-2006 ALWIL Software. > http://www.avast.com >=20 >=20 --- avast! Antivirus: Outbound message clean. Virus Database (VPS): 0664-0, 12/28/2006 Tested on: 12/28/2006 8:05:56 PM avast! is copyright (c) 2000-2006 ALWIL Software. http://www.avast.com |
From: Brian M. <bmi...@hu...> - 2006-12-29 01:07:42
|
Hi again, I've just started using ToolTips with the -balloon option. It appears = that the 'warning' and 'info' icons are reversed (1.05). When I use the = 'warning' icon, the info icon is displayed, and when I use the 'info' icon, I get = the ! in a triangle icon. Should I raise a tracker on this? Brian Millham Tommy, Helen and Paka This message has traveled at least 44,000 miles to reach you! http://www.millham.net br...@mi... --- avast! Antivirus: Outbound message clean. Virus Database (VPS): 0664-0, 12/28/2006 Tested on: 12/28/2006 8:02:43 PM avast! is copyright (c) 2000-2006 ALWIL Software. http://www.avast.com |
From: Leif A. <Lei...@su...> - 2006-12-28 19:52:56
|
Thank you Robert, Your explanation makes sense to me. I will search the archives for your work-arounds. And, by the way, the reason my posted code didn't work as advertised is that the first line of mainw.gui should read: $mainW =3D new Win32::GUI::DialogBox( Thanks again for the time and efforts you are devoting to the Win32::GUI project, /Leif |
From: Robert M. <rm...@po...> - 2006-12-28 19:35:46
|
Steve Loughran wrote: > I am writing an application that is used on a touch screen, and would > like to implement a slider, but it appears that there is no control over > the size of the slider bar "button" to make it "fat" enough to > accurately place a finger on the screen and select it. > > Does anyone have any suggestions as to what I should be looking at as a > replacement? Or pointers to implement my own slider or even scrollbar > objects? You can do this with the standard TrackBar/Slider object: - use the -fixedlength => 1 option. This option sets a style that tells the control that you are going to set the width of the thumb. - then use the SetThumbLength() method to set the size as bitg as you need. Regards, Rob. #!perl -w use strict; use warnings; use Win32::GUI(); my $mw = Win32::GUI::Window->new( -title => 'Big Thumb', -size => [400,300], ); $mw->AddSlider( -name => 'Slider', -size => [$mw->ScaleWidth(), $mw->ScaleHeight()], -fixedlength => 1, -both => 1, -selrange => 0, ); # Set the Thumb to be 3 times it's original size my $thumb_factor = 3; $mw->Slider->SetThumbLength($thumb_factor * $mw->Slider->GetThumbLength()); $mw->Show(); Win32::GUI::Dialog(); |
From: Robert M. <rm...@po...> - 2006-12-28 19:30:45
|
Perl Rob wrote: > Hi all, > > I've discovered a weird problem: if I minimize all open windows by > clicking the "Show Desktop" button (from the Windows Quick Launch area) > right before I run my Win32::GUI program, my program window opens and > paints itself properly, but then immediately "hiccups" and loses all its > images. If I minimize and restore my window, or drag it off the screen > and back on again, it then repaints itself correctly and everything is > fine (I'm drawing the images to the window's DC and using Window_Paint > to keep it painted). That does indeed sound weird. You'll really need to try to produce a short, complete example showing the problem if you want help. > P.S. - I'd be happy to provide sample code off-list (my app is already > past 7000 lines of code with all the inline bitmaps). Shorter, please :-) Regards, Rob. |
From: Robert M. <rm...@po...> - 2006-12-28 19:27:27
|
Brian Millham wrote: > Hi all, > I'm playing with NotifyIcon with Balloon tooltips. (Win32::GUI > version 1.05) > Is there a way to display the balloon when the mouse is hovering > over the NotifyIcon? (like how the -tip text is displayed, except in a > balloon) > > The only way that I can figure out is to use the MouseEvent event. > But that fires every time that the mouse is moved (or clicked), so there > would have to be a timer to track if the balloon is displayed (unless there > is a method to check if the balloon is already displayed.) I can't think of a good way to achieve what you want, especially as you're not guaranteed that a balloon will display immediately that you ask for it: if another app has a balloon displayed, then your request gets queued by the OS, until it takes down the earlier balloon. Regards, Rob. |
From: Robert M. <rm...@po...> - 2006-12-28 19:25:03
|
Leif Andersson wrote: > I had the, maybe bad, idea of putting up a kind of "framework", so I > could manage my windows definitions in external separate files. Doesn't sound like a bad idea, so far. > In its simplest form it works as expected: > <code> > #!/usr/bin/perl -w > use strict; > use Win32::GUI qw(WS_SYSMENU); > > my $handle = do 'mainw.gui' ; > $handle->Show; > Win32::GUI::Dialog(); > </code> > > But I also wanted to build this around some objects. > So I added a package returning an object. > Now it still appeared to work, but on exit I get some error messages > like: > > (in cleanup) Can't call method "DELETE" on an undefined value ... packages are definitely the right way to go. That particular error looks like one that has been around since before I took over looking after the Win32::GUI package. I know where it happens, and have a very good idea what causes it, but it's in an area of code that I'm not happy to play with, as I can't find a short script that reliably tickles the problem. I beleive that the problem arises due to perl sometimes performing its final garbage collection sweep in a different order to other times, and the order seems to change dependent on memory layout - so just changing a few bytes of the script is sometimes enough to make it go away. I posted a number of work-arounds to this list a few weeks(months?) ago - search the archives for that error message. > First, I can't understand what the undefined value is. > (But it clearly has to do with the exported constants.) I would be very surprised if it had anything to do with exported constants - much more likely that the changes you make to your script tickle the memory allocation. (As an aside the code you posted generates the following error for me 'Can't call method "Show" on an undefined value at main.pl line 28.' - I have not investigated further) > Second - can I just disregard this message? Should I do it in some other > way? Or should I drop the whole idea? You can safely ignore the message. Regards, Rob. > > The version I am using is ActiveState Perl 5.8.8 build 819 > with Win32::GUI version 1.0304 > > Some code to show the error: > > #!/usr/bin/perl -w > package NC::GUI; > > use strict; > use Carp; > #use Win32::GUI(); > # uncomment line above and > # out-comment the line below to make error disappear > use Win32::GUI qw(WS_SYSMENU); # any constant will do > > sub new { > my $class = shift; > $class = ref($class) || $class; > my $self = {}; > bless $self, $class; > return $self; > } > > sub read_form { > my ($self, $filename) = @_; > > # read a file containing definitions for a window > $self->{form}->{$filename}->{window} = do $filename ; > } > > sub run { > my ($self, $name) = @_; > $self->{form}->{'mainw.gui'}->{window}->Show; > Win32::GUI::Dialog(); > } > 1; > > #----------------------------------------------------------------------- > -- > package main; > use strict; > > my $obj = new NC::GUI; > $obj->read_form('mainw.gui'); > $obj->run(); > > __END__ > > #-- And the external file mainw.gui contains: > > $mainW = new GUI::DialogBox( > -name => "mainWindow", > -title => "Our main window", > -left => 100, > -top => 100, > -width => 130, > -height => 230, > ); > > $mainW->AddButton( > -name => "mainButton1", > -text => "Dummy", > -valign => "center", > -left => 70, > -top => 164, > -width => 40, > ); > > # return handle > $mainW; > > #--- end of mainw.gui --- > > > Thanks for any insights, > > Leif > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys - and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > Perl-Win32-GUI-Users mailing list > Per...@li... > https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users > http://perl-win32-gui.sourceforge.net/ > |
From: Kind, U. (AGIS) <uwe...@al...> - 2006-12-28 19:23:28
|
Hi Rob, =20 if you use a Label with the "-notify =3D> 0" option to display the = bitmap it should be possible to place other controls on top of it.=20 =20 If you need to catch the events for the background bitmap your in trouble. There seems to be a bug in the event handling for child-controls in Win32::GUI. See also Bug Tracker 1588332. =20 Bye, Uwe ________________________________ Von: per...@li... [mailto:per...@li...] Im Auftrag von Perl Rob Gesendet: Donnerstag, 21. Dezember 2006 15:03 An: Win32 GUI Users Mailing List Betreff: [perl-win32-gui-users] Need help placing controls on top of graphics Hi, =20 I'm attempting to place a scrollable text field on top of the background image of my window. Unfortunately, if I add the text field to the window first (i.e. before adding the graphic to the window), then the text field gets "swallowed up" by the graphic, and the only way to see the text field is to mouse over it or click it. If, on the other hand, I add the graphic first, (i.e. before adding the text field), then the text field is properly displayed but frozen--I can't click inside it or scroll it down. =20 I've been searching the Win32-GUI archives and reading the Win32-GUI documentation for several days to no avail, and I've concluded that I just don't understand how to work with graphics. Any advice/education/assistance would be greatly appreciated. Below is an example of my code thus far, which illustrates the "swallowing up" probem. If you move lines 34-49 to line 19, you can see the freezing problem. =20 ############################################# #!c:\perl\bin\perl -w =20 use strict; use Win32::GUI(); use Win32::GUI::DIBitmap(); =20 my $DC; =20 my $main =3D Win32::GUI::Window->new( -name =3D> 'Main', -width =3D> 799, -height =3D> 577, -text =3D> 'Example... ', -resizable =3D> 0, -hasmaximize =3D> 0, -dialogui =3D> 1, -topmost =3D> 1, ); =20 my $license_agreement_field =3D $main->AddTextfield( -readonly =3D> 1, -multiline =3D> 1, -name =3D> 'LicenseTextField', -width =3D> 508, -height =3D> 347, -top =3D> 73, -left =3D> 15, -background =3D> [255, 255, 255], -vscroll =3D> 1, ); =20 my $license_agreement_text1 =3D = $license_agreement_field->Append("License agreement goes here..."); =20 $main->AddGraphic ( -name =3D> "Graphic", -pos =3D> [0, 0], -size =3D> [$main->ScaleWidth,$main->ScaleHeight], -interactive =3D> 1, ); =20 my $background =3D newFromFile Win32::GUI::DIBitmap ('Menu_License_Background.gif'); =20 sub Graphic_Paint { $DC =3D $main->Graphic->GetDC(); if (defined $background) { $background->CopyToDC($DC); } $DC->Validate(); } =20 $main->Show(); Win32::GUI::Dialog(); ############################################# =20 =20 Thanks in advance, Rob |
From: Robert M. <rm...@po...> - 2006-12-28 19:09:30
|
Steve Loughran wrote: > A crazy thought, but... is it possible to draw a bitmap into the status > bar of a window? I want to have some kind of graphical "status" > indicator (alongside the text in the status bar).... any ideas? Or > should I just drop this idea and get on with something else instead? :) What's crazy about that. Did you try the StatusBar's SetIcon() method? If you want more than one icon in any statusbar part, then the easiest thing would be to create labels, and position them in front of the statubar. Regards, Rob. #!perl -w use strict; use warnings; use Win32::GUI qw(IDI_DEFAULTICON IMAGE_ICON); my $mw = Win32::GUI::Window->new( -title => 'Status Icons', -size => [400,300], -onResize => \&resize, ); $mw->AddStatusBar( -name => 'SB', -sizegrip => 0, ); my ($hborder, $vborder, $pborder) = $mw->SB->GetBorders(); # Calculate the size of the icon to fit in the # Status bar my $size = $mw->SB->Height() - ($vborder * 2); print "$size $hborder $vborder $pborder\n"; # Load the icon - we use the Bitmap class, as it allows us # to re-size the image on creation, but as it to give us # an icon. Happily we can pass the created object to most # API call that require an ICON object my $icon = Win32::GUI::Bitmap->new(IDI_DEFAULTICON, IMAGE_ICON, $size, $size); $mw->SB->SetIcon(0, $icon); $mw->SB->SetText(0, "Some Helpful Comment"); $mw->Show(); Win32::GUI::Dialog(); $mw->Hide(); exit(0); sub resize { my $self = shift; # With default styles the statusbar always repositions # itself correctly at the bottom of the window, whenever # it's size is changed, so rather than calculate the # correct position/size we just change it's size and let # it do the calculation $self->SB->Resize(0,0); return 0; } |
From: Robert M. <rm...@po...> - 2006-12-28 18:59:33
|
MALEADt wrote: > Hi all. I'm making my first programs with the win32::gui module, but I'm > experiencing some problems: > > 1) threads and win32gui? Certainly possible, but there are some issues that you need to understand witht he current releases. If you haven't been pointed at it already, then I suggest that you take a look at the Win32::GUI::ThreadUtils package - available from http://www.robmay.me.uk/win32gui/ > Until yesterday I was using activeperl's distribution (1.03), but after > updating to 1.05 I'm getting the following errors with my script: > Free to wrong pool 1ceafb0 not 222828 at > C:/Perl/site/lib/Win32/GUI.pm line 294 during global destruction. Sorry, can't help with that one without more detail. > I tried adding a piece of code a found somewhere: > # make Win32::GUI threadsafe > sub Win32::GUI::CLONE_SKIP {1}; > sub Win32::GUI::Timer::CLONE_SKIP {1}; and then below you go on to use a Win32::GUI::NotifyIcon object, that will almost certainly need the same treatment. Win32::GUI::ThreadUtils should add all the necessary CLONE_SKIP definitions to make the whole Win32::GUI package safe(r). > Still got an error, but now another one: > Thread failed to start: Can't call method "Text" on unblessed > reference at Smoothwall Remote.pl line 794. > Attempt to free non-existent shared string 'Tray', Perl interpreter: > 0x1cec67c at C:/Perl/site/lib/Win32/GUI.pm line 3429 during global > destruction. > Unbalanced string table refcount: (1) for "" during global > destruction. > Unbalanced string table refcount: (1) for "DELETE" during global > destruction. > Scalars leaked: -1 > Tray is the name of my NotifyIcon, tried to comment it out but I'm still > getting the same error :? Without a short, complete example that we can run so that we can see the problem, it's very difficult to tell if this is a Win32::GUI problem or not. > 2) Hide() vs -Visible => 0 > > I'm working with tabstrips, and on tabstrip_change, I hide some labels and > textboxes to show others. > I was doing this with "$main_window->label->Hide()", but to shorten some > code I tried to do it like "$main_window->label->Change(-visible => 0)". > But this doesn't work completely: the main window doesn't get updated (you > don't see any changes). But if I place "$main_window->Hide(); > $main_window->Show();" right after, the changes get updated, but with some > flickering (I tried "$main_window->Update();" too, but this doesn't seem to > do anything). > Do I miss something? Not really. $window->Change(-visible => 0); only toggles the WS_VISIBLE style bit - a redraw is needed to reflect the change. This might be considered a bug. Regards, Rob. |
From: Robert M. <rm...@po...> - 2006-12-28 18:50:29
|
Steve Loughran wrote: > OK, this is driving me mad on and off for a few days (I keep coming back > to it)... > > #======== > > my $window = Win32::GuiTest::FindWindowLike(undef, "fubar"); > > Win32::GUI::BringWindowToTop($window); > > #======== > > This doesn't affect the window Z order at all, and yet if I click on the > window with the mouse, it raises to the top. Any ideas? I don't know for sure, but it's very likely that you can't call BringWindowToTop() on a window of another thread/process - in much the same way that it is documented that you can't call SetActiveWindow cross-thread/process. If this is the case and you really need to do it, then there are some tricks using AttachThreadInput() - but I've never tried, only ready about them. Regards, Rob. |
From: Robert M. <rm...@po...> - 2006-12-28 18:47:44
|
Apu islam wrote: > Anyone has a Win32::GUI::Toolbar example they can > share ? I am trying this on the new 1.05 version and > not having any luck to display that on my window > object. Here's something that I did some time ago when I was playing with toolbars. It's not very tidy, but might help. Regards, Rob. #!perl -w # A demo of the toolbar capabilities. # Here is a list of things that I haven't yet made work or might be useful to add # - get the customisation to work. Needs research on exactly which notifications need handling # Simply setting CCS_ADJUSTABLE style does not seem to be enough # - handle the tooltip request for text - needs a handler like NeedsText in tooltip.xs # - extend model to allow passing I_IMAGECALLBACK as bitmap reference in AddButton to get toolbar to # issue TBN_GETDISPINFO to retrieve image index. # - toolbar.xs comments on AddString suggests that AddString should accept a list of strings. This should # be fixed (or perhaps better to add method AddStrings() that does) # - would be nice if AddButtons STRING field could be a string as well as an index. use strict; use warnings; use Win32::GUI 1.05 qw(:toolbar ILC_MASK); use Win32::GUI::BitmapInline (); sub IMAGE_X() {16}; # X dimension for buttons in our toolbar sub IMAGE_Y() {15}; # Y dimension for images in our toolbar # Create a menu - that we'll use for the drop-down menu from the toolbar # buttons. my $menu = Win32::GUI::Menu->new( "" => "PopUpMenu", "> MenuItem&1" => { -name => "MI1", -onClick => sub { print "MenuItem1 clicked\n";} }, "> MenuItem&2" => { -name => "MI2", -onClick => sub { print "MenuItem2 clicked\n";} }, "> -" => 0, "> MenuItem&3" => { -name => "MI3", -onClick => sub { print "MenuItem3 clicked\n";} }, ); my $popupmenu = $menu->{PopUpMenu}; # Main Window my $mw = Win32::GUI::Window->new( -title => "Toolbar Demo", -size => [500,300], ); # A bitmap for our toolbar my $bmp = new Win32::GUI::BitmapInline( q( Qk0GAwAAAAAAADYAAAAoAAAAEAAAAA8AAAABABgAAAAAANACAADEDgAAxA4AAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////////// ////////////////////////////////////////////AAAAAAAA////////////////AAAAAAAA AAAAAAAAAAAAAAAA////////////////AAAAAAAA////////////////////////AAAAAAAA//// ////////////////////AAAAAAAA////////////////////////AAAAAAAA//////////////// ////////AAAAAAAA////////////////////////AAAAAAAA////////////////////////AAAA AAAA////////////////////////AAAAAAAA////////////////////////AAAAAAAA//////// ////////////////AAAAAAAA////////////////////////AAAAAAAA//////////////////// ////AAAAAAAA////////////////////////AAAAAAAA////////////////////////AAAAAAAA ////////////////////////AAAAAAAA////////////////AAAAAAAAAAAAAAAA//////////// ////////////AAAAAAAA////////////////////AAAAAAAAAAAA//////////////////////// AAAAAAAA////////////////////////AAAAAAAA////////////////////////AAAAAAAA//// ////////////////////////////////////////////////////AAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ) ); # A masked imagelist to put the toolbar buttons into my $images = Win32::GUI::ImageList->new( IMAGE_X, IMAGE_Y, ILC_MASK, 1, 1, ); # Add the bitmap to the imagelist, generating the mask from the background colour (0xFFFFFF) $images->AddBitmapMasked($bmp, 0xFFFFFF); # Add a toolbar to the main window # TBSTYLE_LIST - puts label captions to the right of the labels, rather than below the labels # TBSTYLE_TOOLTIPS - creates a tooltip control to manage tooltips associated with the toolbar my $tools = $mw->AddToolbar( -imagelist => $images, -flat => 1, #-pushstyle => CCS_ADJUSTABLE, -pushstyle => TBSTYLE_LIST, -pushstyle => TBSTYLE_TOOLTIPS, -onButtonClick => \&ToolbarButtonClick, ); # Set extended syles. It took me a long time to determine that this was NOT # the same as using -pushexstyle on the AddToolbar method. # TBSTYLE_EX_DRAWDDARROWS - causes drop down arrows to be drawn to the right of toolbar icons # TBSTYLE_EX_MIXEDBUTTONS - causes the text associated with a button not to be drawn, unless the # button has the BTNS_SHOWTEXT style. Instead the text is used by default for the tooltip(this # behaviour can be stopped by processing the TBN_GETTIPINFO notification) $tools->SetExtendedStyle(TBSTYLE_EX_DRAWDDARROWS|TBSTYLE_EX_MIXEDBUTTONS); # Add some strings to the toolbars string table $tools->AddString("Button 1"); $tools->AddString("Button 2 - on/off"); $tools->AddString("Button 3 - group"); $tools->AddString("Button 4 - group"); $tools->AddString("Button 5 - dropdown"); $tools->AddString("DropMenu"); # Add the buttons # BITMAP is a zero-based index to the image in the toolbar's image list, except when # STYLE is TBSTYLE_SEP. In this case it is the spacing on either side of the seperator # in pixels. # COMMAND is an (application-wide) unique number. # STRING is a zero-based index into the tooltip's string table $tools->AddButtons( 8, # BITMAP, COMMAND, STATE, STYLE, STRING 0, 1, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0, 2, TBSTATE_ENABLED, TBSTYLE_CHECK, 1, 20, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0, 0, 3, TBSTATE_ENABLED|TBSTATE_CHECKED, TBSTYLE_CHECK|TBSTYLE_GROUP, 2, 0, 4, TBSTATE_ENABLED, TBSTYLE_CHECK|TBSTYLE_GROUP, 3, 20, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0, 0, 5, TBSTATE_ENABLED, TBSTYLE_DROPDOWN, 4, 0, 6, TBSTATE_ENABLED, BTNS_WHOLEDROPDOWN|BTNS_SHOWTEXT, 5, ); # Adjuxt the button sizes for the text and images $tools->AutoSize(); $mw->Show(); Win32::GUI::Dialog(); exit(0); sub ToolbarButtonClick { my ($self, $index, $drawmenu) = @_; print "Toolbar: Button index: $index, Draw menu: $drawmenu\n"; if($drawmenu) { # Button has the TBSTYLE_DROPDOWN or BTNS_WHOLEDROPDOWN style # Get the button corners, and convert to screen co-ordinates my ($l, $t, $r, $b) = $self->GetRect($index); ($l, $t) = $self->ClientToScreen($l, $t); ($r, $b) = $self->ClientToScreen($r, $b); # Display and interact with the popup menu. $self->TrackPopupMenu($popupmenu, $l, $b, $l, $t, $r, $b); } return 1; } |
From: Kind, U. (AGIS) <uwe...@al...> - 2006-12-28 17:59:32
|
Hi maleadt,=20 =20 have a look at the Win32::GUI::ThreadUtils package. It comes with a good example for changing the value of a progress bar. Setting the content of a textbox is quite comparable. =20 Bye, Uwe =20 ________________________________ Von: per...@li... [mailto:per...@li...] Im Auftrag von MALEADt Gesendet: Mittwoch, 27. Dezember 2006 21:01 An: per...@li... Betreff: [perl-win32-gui-users] Change values out of a thread Hi, =20 Maybe a stupid question, but how do I change a value of a textbox out of a thread? Textbox is created in the main program. On a button click, a thread is launched and detached, but that thread can't change the value of that textbox.. always getting: "thread failed to start: can't call method "change" on unblessed reference at ...". =20 Thanks in advance, maleadt |
From: Jason P. <jp...@un...> - 2006-12-28 14:26:29
|
Simply state that the desktop owns it! --code-- use strict; use warnings; use Win32::GUI; my $ret = Win32::GUI::ShellExecute(Win32::GUI::GetDesktopWindow(),'open','notepad.exe','readme.txt','',1); Scott Spearman wrote: > I don't know if it's in Win32 or ActiveStates Perl, but the traditional Unix > method is to do an exec(). It takes a new executable and completely > replaces your running program with the new program specified. > > I figure it's probably something you've already tried, but just in case... > > Scott Spearman > > > > Programmer Analyst - Pikeville Medical Center > > Sco...@pi... > > (606) 218-4660 > > > -----Original Message----- > From: per...@li... > [mailto:per...@li...] On Behalf Of > Zach > Sent: Thursday, December 28, 2006 6:46 AM > To: per...@li... > Subject: [perl-win32-gui-users] Launching a detached child process fromWin32 > app > > I recently wrote an install shield with Win32::GUI. A > nice feature I see of some install shields is the > option to "Launch application" after the install is > done. It's a nice convinient feature to let the user > get down to business without having to click on the > app via the start menu or desktop icon. > > The problem is that I have yet to find a method for > executing a program from a Win32 that doesn't wait for > the child to die. I have tried various fork methods as > well as Proc methods and Win32::Job and threads. All > of these methods require that the parent, or calling > program wait until the spawn's program dies. I of > course just want to launch the install app and let the > user exit the install shield. This has to be doable > right? > > Thank you. > > __________________________________________________ > Do You Yahoo!? > Tired of spam? Yahoo! Mail has the best spam protection around > http://mail.yahoo.com > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys - and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > Perl-Win32-GUI-Users mailing list > Per...@li... > https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users > http://perl-win32-gui.sourceforge.net/ > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys - and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > Perl-Win32-GUI-Users mailing list > Per...@li... > https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users > http://perl-win32-gui.sourceforge.net/ > > > > |
From: <er...@ki...> - 2006-12-28 13:16:54
|
I've reply'd by e-mail since this isn't a win32::gui problem. I think =20 this is what he wants: #!/usr/bin/perl system 'rundll32.exe url.dll,FileProtocolHandler notepad.exe'; print foreach (1..10); __END__ While notepad is running, the main program still counts to 10 and =20 exits nicely. Quoting Scott Spearman <sco...@pi...>: > I don't know if it's in Win32 or ActiveStates Perl, but the traditional Un= ix > method is to do an exec(). It takes a new executable and completely > replaces your running program with the new program specified. > > I figure it's probably something you've already tried, but just in case... > > Scott Spearman > > > > Programmer Analyst - Pikeville Medical Center > > Sco...@pi... > > (606) 218-4660 > > > -----Original Message----- > From: per...@li... > [mailto:per...@li...] On Behalf Of > Zach > Sent: Thursday, December 28, 2006 6:46 AM > To: per...@li... > Subject: [perl-win32-gui-users] Launching a detached child process fromWin= 32 > app > > I recently wrote an install shield with Win32::GUI. A > nice feature I see of some install shields is the > option to "Launch application" after the install is > done. It's a nice convinient feature to let the user > get down to business without having to click on the > app via the start menu or desktop icon. > > The problem is that I have yet to find a method for > executing a program from a Win32 that doesn't wait for > the child to die. I have tried various fork methods as > well as Proc methods and Win32::Job and threads. All > of these methods require that the parent, or calling > program wait until the spawn's program dies. I of > course just want to launch the install app and let the > user exit the install shield. This has to be doable > right? > > Thank you. > > __________________________________________________ > Do You Yahoo!? > Tired of spam? Yahoo! Mail has the best spam protection around > http://mail.yahoo.com > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share yo= ur > opinions on IT & business topics through brief surveys - and earn cash > http://www.techsay.com/default.php?page=3Djoin.php&p=3Dsourceforge&CID=3DD= EVDEV > _______________________________________________ > Perl-Win32-GUI-Users mailing list > Per...@li... > https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users > http://perl-win32-gui.sourceforge.net/ > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share yo= ur > opinions on IT & business topics through brief surveys - and earn cash > http://www.techsay.com/default.php?page=3Djoin.php&p=3Dsourceforge&CID=3DD= EVDEV > _______________________________________________ > Perl-Win32-GUI-Users mailing list > Per...@li... > https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users > http://perl-win32-gui.sourceforge.net/ > |
From: Scott S. <sco...@pi...> - 2006-12-28 13:06:42
|
I don't know if it's in Win32 or ActiveStates Perl, but the traditional Unix method is to do an exec(). It takes a new executable and completely replaces your running program with the new program specified. I figure it's probably something you've already tried, but just in case... Scott Spearman Programmer Analyst - Pikeville Medical Center Sco...@pi... (606) 218-4660 -----Original Message----- From: per...@li... [mailto:per...@li...] On Behalf Of Zach Sent: Thursday, December 28, 2006 6:46 AM To: per...@li... Subject: [perl-win32-gui-users] Launching a detached child process fromWin32 app I recently wrote an install shield with Win32::GUI. A nice feature I see of some install shields is the option to "Launch application" after the install is done. It's a nice convinient feature to let the user get down to business without having to click on the app via the start menu or desktop icon. The problem is that I have yet to find a method for executing a program from a Win32 that doesn't wait for the child to die. I have tried various fork methods as well as Proc methods and Win32::Job and threads. All of these methods require that the parent, or calling program wait until the spawn's program dies. I of course just want to launch the install app and let the user exit the install shield. This has to be doable right? Thank you. __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Perl-Win32-GUI-Users mailing list Per...@li... https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users http://perl-win32-gui.sourceforge.net/ |
From: Octavian R. <ora...@gm...> - 2006-12-28 13:04:30
|
I have not tried with Install Shield, but only with Null Soft installer (which is free) and you can do this very simple. You just need to put an "exec [program name]" in the configuration script, and the installer will launch that program. Of course you can close the installer while the program is still running. However, I'm sure Install Shield also can do this. Octavian ----- Original Message ----- From: "Zach" <zp...@ya...> To: <per...@li...> Sent: Thursday, December 28, 2006 1:46 PM Subject: [perl-win32-gui-users] Launching a detached child process fromWin32 app >I recently wrote an install shield with Win32::GUI. A > nice feature I see of some install shields is the > option to "Launch application" after the install is > done. It's a nice convinient feature to let the user > get down to business without having to click on the > app via the start menu or desktop icon. > > The problem is that I have yet to find a method for > executing a program from a Win32 that doesn't wait for > the child to die. I have tried various fork methods as > well as Proc methods and Win32::Job and threads. All > of these methods require that the parent, or calling > program wait until the spawn's program dies. I of > course just want to launch the install app and let the > user exit the install shield. This has to be doable > right? > > Thank you. > > __________________________________________________ > Do You Yahoo!? > Tired of spam? Yahoo! Mail has the best spam protection around > http://mail.yahoo.com > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > opinions on IT & business topics through brief surveys - and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > Perl-Win32-GUI-Users mailing list > Per...@li... > https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users > http://perl-win32-gui.sourceforge.net/ |
From: Zach <zp...@ya...> - 2006-12-28 11:46:26
|
I recently wrote an install shield with Win32::GUI. A nice feature I see of some install shields is the option to "Launch application" after the install is done. It's a nice convinient feature to let the user get down to business without having to click on the app via the start menu or desktop icon. The problem is that I have yet to find a method for executing a program from a Win32 that doesn't wait for the child to die. I have tried various fork methods as well as Proc methods and Win32::Job and threads. All of these methods require that the parent, or calling program wait until the spawn's program dies. I of course just want to launch the install app and let the user exit the install shield. This has to be doable right? Thank you. __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com |
From: Perl R. <pe...@co...> - 2006-12-27 21:54:33
|
Hi all, I'm getting the following error when attempting to print images (inline bitmaps or .bmp files) using the Image() function of Win32::Printer: "FreeImage is not supported in this build!" According to the Win32::Printer documentation, bitmap support is achieved by copying FreeImage.dll "somewhere in your system path", which I've done to no avail. Any ideas on how I can fix this problem, or any recommendations on a better way to print images? I do want the standard Windows "Print" dialog box to appear so the user can choose the printer and number of copies, etc. (BTW, I tried looking into Win32::API for this, but I got completely lost trying to figure out how to determine the prototype of the function being imported from comdlg32.dll and/or gdi32.dll). Any help with Win32::Printer or Win32::API would be much appreciated! Thanks, Rob |