|
From: rpnoble <rp...@ib...> - 2008-07-05 17:40:21
|
This is my response to a query on perlmonks. It loads the default Adobe
Acrobat ActiveX viewer in a Win32::GUI window via a file open menu. I used
the Notepad.pl and GetOpenFileName.pl files for my base app.
#!perl -w
use strict;
use warnings;
use Win32::GUI 1.06 qw(CW_USEDEFAULT);
use Win32::GUI::AxWindow;
# Define the application menu
my @menu_defn = (
"File" => "File",
">OpenPDf" => { -name => "OpenPDF", -onClick => \&OpenPDF},
">Exit" => { -name => "Exit", -onClick => \&QuitFile },
);
my $menu = Win32::GUI::Menu->new(@menu_defn);
#Define the application window
my $mw = Win32::GUI::Window->new(
-title => "Open PDF File",
-size => [400,400],
-left => CW_USEDEFAULT,
-menu => $menu,
-onResize => \&resize,
-onTerminate => \&QuitFile,
);
# Add a Acrobat AxtiveX control
my $PDFControl = new Win32::GUI::AxWindow (
-parent => $mw,
-name => "PDFControl",
-control => "AcroPDF.PDF.1",
-pos => [0, 0],
-size => [400, 400],
);
#Show application window
$mw->Show();
#Enter event loop
Win32::GUI::Dialog();
#Hide windows on exit
$mw->Hide();
undef $mw;
exit(0);
#Open standard windows file open dialog box
sub OpenPDF {
my ( @file, $file );
my ( @parms );
push @parms,
-filter =>
[ 'PDF - Adobe Acrobat File', '*.pdf',
],
-directory => "c:\\",
-title => 'Select a PDF file';
@file = Win32::GUI::GetOpenFileName ( @parms );
# print "PDF File: $file[ 0 ]\n";
# Call Acorbat LoadFile Method
$PDFControl->CallMethod("LoadFile", $file[ 0 ]);
return 0;
}
#resize to fit user input
sub resize {
my ($self) = @_;
my ($width, $height) = ($self->GetClientRect())[2..3];
$self->PDFControl->Resize($width+1, $height+1) if exists
$self->{PDFControl};
}
#Exit the application
sub QuitFile {
my $self = shift;
#Set the Acrobat control to nothing
$PDFControl->CallMethod("LoadFile", "");
#This line is needed to keep the PERL interperter from crashing
$PDFControl->Release();
return -1;
}
--
View this message in context: http://www.nabble.com/Sample-Application-to-load-Adobe-Acrobat-ActiveX-control-tp18294501p18294501.html
Sent from the perl-win32-gui-users mailing list archive at Nabble.com.
|
|
From: Octavian R. <ora...@gm...> - 2008-07-05 18:57:10
|
Hi,
Can you please tell me where from I can get Win32::GUI 1.06?
I have the Theoryx repository set in ppm, but the latest available version
is 1.03 there.
I have also tried to compile Win32::GUI using the cpan shell (I have VS6)
but as usually, it gave some compiling errors that I don't know how to
solve.
Thank you.
Octavian
----- Original Message -----
From: "rpnoble" <rp...@ib...>
To: <per...@li...>
Sent: Saturday, July 05, 2008 8:40 PM
Subject: [perl-win32-gui-users] Sample Application to load Adobe Acrobat
ActiveX control
>
> This is my response to a query on perlmonks. It loads the default Adobe
> Acrobat ActiveX viewer in a Win32::GUI window via a file open menu. I used
> the Notepad.pl and GetOpenFileName.pl files for my base app.
>
> #!perl -w
>
> use strict;
> use warnings;
> use Win32::GUI 1.06 qw(CW_USEDEFAULT);
> use Win32::GUI::AxWindow;
>
> # Define the application menu
> my @menu_defn = (
> "File" => "File",
> ">OpenPDf" => { -name => "OpenPDF", -onClick => \&OpenPDF},
> ">Exit" => { -name => "Exit", -onClick => \&QuitFile },
> );
>
> my $menu = Win32::GUI::Menu->new(@menu_defn);
>
>
> #Define the application window
> my $mw = Win32::GUI::Window->new(
> -title => "Open PDF File",
> -size => [400,400],
> -left => CW_USEDEFAULT,
> -menu => $menu,
> -onResize => \&resize,
> -onTerminate => \&QuitFile,
> );
>
> # Add a Acrobat AxtiveX control
> my $PDFControl = new Win32::GUI::AxWindow (
> -parent => $mw,
> -name => "PDFControl",
> -control => "AcroPDF.PDF.1",
> -pos => [0, 0],
> -size => [400, 400],
> );
>
> #Show application window
> $mw->Show();
>
> #Enter event loop
> Win32::GUI::Dialog();
>
> #Hide windows on exit
> $mw->Hide();
> undef $mw;
> exit(0);
>
>
> #Open standard windows file open dialog box
> sub OpenPDF {
> my ( @file, $file );
> my ( @parms );
> push @parms,
> -filter =>
> [ 'PDF - Adobe Acrobat File', '*.pdf',
> ],
> -directory => "c:\\",
> -title => 'Select a PDF file';
> @file = Win32::GUI::GetOpenFileName ( @parms );
> # print "PDF File: $file[ 0 ]\n";
>
> # Call Acorbat LoadFile Method
> $PDFControl->CallMethod("LoadFile", $file[ 0 ]);
>
> return 0;
> }
>
> #resize to fit user input
> sub resize {
> my ($self) = @_;
> my ($width, $height) = ($self->GetClientRect())[2..3];
> $self->PDFControl->Resize($width+1, $height+1) if exists
> $self->{PDFControl};
> }
>
>
> #Exit the application
> sub QuitFile {
>
> my $self = shift;
>
> #Set the Acrobat control to nothing
> $PDFControl->CallMethod("LoadFile", "");
>
> #This line is needed to keep the PERL interperter from crashing
> $PDFControl->Release();
>
> return -1;
> }
>
> --
> View this message in context:
> http://www.nabble.com/Sample-Application-to-load-Adobe-Acrobat-ActiveX-control-tp18294501p18294501.html
> Sent from the perl-win32-gui-users mailing list archive at Nabble.com.
>
>
> -------------------------------------------------------------------------
> Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW!
> Studies have shown that voting for your favorite open source project,
> along with a healthy diet, reduces your potential for chronic lameness
> and boredom. Vote Now at http://www.sourceforge.net/community/cca08
> _______________________________________________
> 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: rpnoble <rp...@ib...> - 2008-07-05 19:11:17
|
I use the following PPM http://www.bribes.org/perl/ppmdir.html Octavian Rasnita-2 wrote: > > Hi, > > Can you please tell me where from I can get Win32::GUI 1.06? > > I have the Theoryx repository set in ppm, but the latest available version > is 1.03 there. > I have also tried to compile Win32::GUI using the cpan shell (I have VS6) > but as usually, it gave some compiling errors that I don't know how to > solve. > > Thank you. > > Octavian > > ----- Original Message ----- > From: "rpnoble" <rp...@ib...> > To: <per...@li...> > Sent: Saturday, July 05, 2008 8:40 PM > Subject: [perl-win32-gui-users] Sample Application to load Adobe Acrobat > ActiveX control > > >> >> This is my response to a query on perlmonks. It loads the default Adobe >> Acrobat ActiveX viewer in a Win32::GUI window via a file open menu. I >> used >> the Notepad.pl and GetOpenFileName.pl files for my base app. >> >> #!perl -w >> >> use strict; >> use warnings; >> use Win32::GUI 1.06 qw(CW_USEDEFAULT); >> use Win32::GUI::AxWindow; >> >> # Define the application menu >> my @menu_defn = ( >> "File" => "File", >> ">OpenPDf" => { -name => "OpenPDF", -onClick => \&OpenPDF}, >> ">Exit" => { -name => "Exit", -onClick => \&QuitFile }, >> ); >> >> my $menu = Win32::GUI::Menu->new(@menu_defn); >> >> >> #Define the application window >> my $mw = Win32::GUI::Window->new( >> -title => "Open PDF File", >> -size => [400,400], >> -left => CW_USEDEFAULT, >> -menu => $menu, >> -onResize => \&resize, >> -onTerminate => \&QuitFile, >> ); >> >> # Add a Acrobat AxtiveX control >> my $PDFControl = new Win32::GUI::AxWindow ( >> -parent => $mw, >> -name => "PDFControl", >> -control => "AcroPDF.PDF.1", >> -pos => [0, 0], >> -size => [400, 400], >> ); >> >> #Show application window >> $mw->Show(); >> >> #Enter event loop >> Win32::GUI::Dialog(); >> >> #Hide windows on exit >> $mw->Hide(); >> undef $mw; >> exit(0); >> >> >> #Open standard windows file open dialog box >> sub OpenPDF { >> my ( @file, $file ); >> my ( @parms ); >> push @parms, >> -filter => >> [ 'PDF - Adobe Acrobat File', '*.pdf', >> ], >> -directory => "c:\\", >> -title => 'Select a PDF file'; >> @file = Win32::GUI::GetOpenFileName ( @parms ); >> # print "PDF File: $file[ 0 ]\n"; >> >> # Call Acorbat LoadFile Method >> $PDFControl->CallMethod("LoadFile", $file[ 0 ]); >> >> return 0; >> } >> >> #resize to fit user input >> sub resize { >> my ($self) = @_; >> my ($width, $height) = ($self->GetClientRect())[2..3]; >> $self->PDFControl->Resize($width+1, $height+1) if exists >> $self->{PDFControl}; >> } >> >> >> #Exit the application >> sub QuitFile { >> >> my $self = shift; >> >> #Set the Acrobat control to nothing >> $PDFControl->CallMethod("LoadFile", ""); >> >> #This line is needed to keep the PERL interperter from crashing >> $PDFControl->Release(); >> >> return -1; >> } >> >> -- >> View this message in context: >> http://www.nabble.com/Sample-Application-to-load-Adobe-Acrobat-ActiveX-control-tp18294501p18294501.html >> Sent from the perl-win32-gui-users mailing list archive at Nabble.com. >> >> >> ------------------------------------------------------------------------- >> Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! >> Studies have shown that voting for your favorite open source project, >> along with a healthy diet, reduces your potential for chronic lameness >> and boredom. Vote Now at http://www.sourceforge.net/community/cca08 >> _______________________________________________ >> Perl-Win32-GUI-Users mailing list >> Per...@li... >> https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users >> http://perl-win32-gui.sourceforge.net/ > > > ------------------------------------------------------------------------- > Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! > Studies have shown that voting for your favorite open source project, > along with a healthy diet, reduces your potential for chronic lameness > and boredom. Vote Now at http://www.sourceforge.net/community/cca08 > _______________________________________________ > Perl-Win32-GUI-Users mailing list > Per...@li... > https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users > http://perl-win32-gui.sourceforge.net/ > > -- View this message in context: http://www.nabble.com/Sample-Application-to-load-Adobe-Acrobat-ActiveX-control-tp18294501p18295305.html Sent from the perl-win32-gui-users mailing list archive at Nabble.com. |
|
From: Jan D. <ja...@ac...> - 2008-07-09 20:42:06
|
On Sat, 05 Jul 2008, Octavian Rasnita wrote:
> Can you please tell me where from I can get Win32::GUI 1.06?
>
> I have the Theoryx repository set in ppm, but the latest available
> version is 1.03 there. I have also tried to compile Win32::GUI using
> the cpan shell (I have VS6) but as usually, it gave some compiling
> errors that I don't know how to solve.
You can download Win32::GUI 1.06 for both 5.8 and 5.10 from the new
beta PPM repositories:
http://ppm.activestate.com/beta/
These repositories are still beta, so please report any problems with
them to the ppm mailing list, or to ActiveState support.
Cheers,
-Jan
|
|
From: glass <gla...@ya...> - 2008-07-06 09:52:15
|
thanks for this rpnoble - i was looking for an example a long time ago.
appreciate your sharing.
rpnoble wrote:
>
> This is my response to a query on perlmonks. It loads the default Adobe
> Acrobat ActiveX viewer in a Win32::GUI window via a file open menu. I used
> the Notepad.pl and GetOpenFileName.pl files for my base app.
>
> #!perl -w
>
> use strict;
> use warnings;
> use Win32::GUI 1.06 qw(CW_USEDEFAULT);
> use Win32::GUI::AxWindow;
>
> # Define the application menu
> my @menu_defn = (
> "File" => "File",
> ">OpenPDf" => { -name => "OpenPDF", -onClick => \&OpenPDF},
> ">Exit" => { -name => "Exit", -onClick => \&QuitFile },
> );
>
> my $menu = Win32::GUI::Menu->new(@menu_defn);
>
>
> #Define the application window
> my $mw = Win32::GUI::Window->new(
> -title => "Open PDF File",
> -size => [400,400],
> -left => CW_USEDEFAULT,
> -menu => $menu,
> -onResize => \&resize,
> -onTerminate => \&QuitFile,
> );
>
> # Add a Acrobat AxtiveX control
> my $PDFControl = new Win32::GUI::AxWindow (
> -parent => $mw,
> -name => "PDFControl",
> -control => "AcroPDF.PDF.1",
> -pos => [0, 0],
> -size => [400, 400],
> );
>
> #Show application window
> $mw->Show();
>
> #Enter event loop
> Win32::GUI::Dialog();
>
> #Hide windows on exit
> $mw->Hide();
> undef $mw;
> exit(0);
>
>
> #Open standard windows file open dialog box
> sub OpenPDF {
> my ( @file, $file );
> my ( @parms );
> push @parms,
> -filter =>
> [ 'PDF - Adobe Acrobat File', '*.pdf',
> ],
> -directory => "c:\\",
> -title => 'Select a PDF file';
> @file = Win32::GUI::GetOpenFileName ( @parms );
> # print "PDF File: $file[ 0 ]\n";
>
> # Call Acorbat LoadFile Method
> $PDFControl->CallMethod("LoadFile", $file[ 0 ]);
>
> return 0;
> }
>
> #resize to fit user input
> sub resize {
> my ($self) = @_;
> my ($width, $height) = ($self->GetClientRect())[2..3];
> $self->PDFControl->Resize($width+1, $height+1) if exists
> $self->{PDFControl};
> }
>
>
> #Exit the application
> sub QuitFile {
>
> my $self = shift;
>
> #Set the Acrobat control to nothing
> $PDFControl->CallMethod("LoadFile", "");
>
> #This line is needed to keep the PERL interperter from crashing
> $PDFControl->Release();
>
> return -1;
> }
>
>
--
View this message in context: http://www.nabble.com/Sample-Application-to-load-Adobe-Acrobat-ActiveX-control-tp18294501p18300419.html
Sent from the perl-win32-gui-users mailing list archive at Nabble.com.
|