2010-03-04 3 views
0

Я использую Perl/Tk для создания графического интерфейса для приложения. Я планирую добавить к нему меню редактирования со стандартными параметрами вырезания, копирования и вставки. Прямо здесь я понял, что я никогда не взаимодействовал с буфером обмена, используя perl.Редактировать> копировать/вставлять реализацию с perl/tk

Может ли кто-нибудь дать мне ссылку на информацию о messing с буфером обмена в perl? Есть ли модуль perl для таких функций в конкретном?

И должен ли я изменить свой код, чтобы быть конкретным для платформы, если я взаимодействую с буфером обмена, так как он является частью ОС хоста, а не частью самого моего приложения?

Заранее благодарим за помощь!

ответ

4

Вы ищете Win32::Clipboard?

+0

Похоже, что это будет хорошо работать для среды Windows. Благодаря! – Micah

1
use strict; 
use Win32::GuiTest qw(:ALL); 
use Win32::Clipboard; 
use POSIX qw(strftime); 

my @windows = FindWindowLike(0, "Total", ""); 
die "Could not find Total\n" if not @windows; 

SetForegroundWindow($windows[0]); 

&send_keys; 

sub send_keys { 
my $dir=strftime('%Y%m%d', localtime(time)); 
my $CLIP = Win32::Clipboard(); 
    $CLIP->Set($dir); 
    $CLIP->WaitForChange(); 
    SendKeys("^V"); 
# SendKeys("{ENTER}"); 
}