Модераторы: ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Win32::GUI, Работа с MetaFile 
:(
    Опции темы
OutlawZ
Дата 4.9.2012, 01:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 269
Регистрация: 19.10.2007

Репутация: нет
Всего: нет



Доброй ночи, кто нить работал с метафайлами в библиотеке Win32::GUI. дело в том что как я не делал но файл не создается. Пробовал много  способов его создать но CreateEnhMetaFile не создает файл.

Гуглил нашел такой пример:
Код

use Win32::GUI;

$W = new Win32::GUI::Window(
    -left => 100,
    -top => 100,
    -width => 400,
    -height => 400,
    -title => "EMF Creator",
    -name => "Window",
);

print "About to show...\n";

$W->Show();

Win32::GUI::Dialog();

sub Window_Terminate {
    return -1;
}

sub Window_Resize {
    if($W) {
        $METAFILE = Win32::GUI::CreateEnhMetaFile($W->GetDC,"prova.emf");
        print "CreateEnhMetaFile returned $DC\n";
        Draw($METAFILE);
        $META = Win32::GUI::CloseEnhMetaFile($METAFILE);
        print "CloseEnhMetaFile returned $META\n";
        $rc = Win32::GUI::DeleteEnhMetaFile($META);
        print "DeleteEnhMetaFile returned $rc\n";
        Draw($W->GetDC);
    }
}

sub Draw {
    my($DC) = @_;
    $X = $W->ScaleWidth;
    $Y = $W->ScaleHeight;
    $r = 0;
    $g = 0;
    $b = 0;
    if($X > 500) {
        $DC->MoveTo(0, $Y/2);
        $DC->LineTo($X, $Y/2);
        $r = 255;
    }
    if($Y > 500) {
        $DC->MoveTo(X/2, 0);
        $DC->LineTo($X/2, $Y);
        $g = 255;
    }
  
    $DC->LineTo(0, 0);
    $DC->LineTo($X, $Y);
    $DC->LineTo($X, 0);
    $DC->LineTo(0, $Y);
    $DC->Circle(0, 0, $X, $Y);
    $DC->SetTextColor($r, $g, $b);
    $DC->SetBkMode(1);
    ($TW, $TH) = $DC->GetTextExtentPoint32("$X x $Y");
    $DC->TextOut($X/2-$TW/2, $Y/2-$TH/2, "$X x $Y");
}


Этот код тоже не работает, уже не знаю что и делать, если кто работал с метафайлами подскажите где я не прав  smile 


--------------------
user posted image
user posted image
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: GUI | Следующая тема »


 




[ Время генерации скрипта: 0.1046 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.