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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> трабл с POE и Tk, use Tk, use POE 
V
    Опции темы
KSURi
Дата 11.4.2007, 00:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 887
Регистрация: 8.6.2006
Где: Russia

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



Вобщем есть примерно такой код:
Код

#!perl

use strict;
use warnings;

use Tk;
use Tk::ROText;
use Tk::Balloon;

use POE;

POE::Session->create(inline_states =>
                     {
                        _start => \&guiDrawMain,
                        poeDrawTools => \&guiDrawTools,
                        poeDrawWiFi  => \&guiDrawWiFi,
                        poeDrawSniff => \&guiDrawSniff,
                        poeDrawFlood => \&guiDrawFlood,
                        poeDrawAbout => \&guiDrawAbout,
                        _stop => sub { exit 0 }
                     });

sub guiDrawMain
{
   $poe_main_window->configure(-title => '...',
                               -background => '#1E303C');
   $poe_main_window->resizable(0, 0);
   
   $_[HEAP]->{oMain} = $poe_main_window->ROText(-height => 20,
                                                -width => 47,
                                                -foreground => '#FFFFFF',
                                                -background => '#354550',
                                                -font => '{Verdana} 9');

# Далее создаются другие элементы главного окна
    
    $_[HEAP]->{oMain}->grid(-column => 0,
                            -row => 0,
                            -pady => 3);

# Здесь расстановка этих элементов

    MainLoop;
}

$poe_kernel->run;

Скрипт запускается, работает ~1 секунду и завершается без ошибок. Есть только варнинг
Код

POE::Kernel's run() method was never called.

И это не смотря на $poe_kernel->run;...

кто-нить видит в чем трабл?


--------------------
Died at Life.pl line 21
PM Jabber   Вверх
Nab
Дата 11.4.2007, 06:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 582
Регистрация: 25.3.2006
Где: Kiev

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



Не хочу врать, но я там везде встречал упоминание о том что с Tk надо работать по другому, так как в нем свой контроллер очереди сообщений, то для корректного использования, нужно использовать немного другие методы, почитайте документацию, там есть об этом...



--------------------
 Чтобы правильно задать вопрос нужно знать больше половины ответа...
Perl Community 
FREESCO in Ukraine 
PM MAIL   Вверх
KSURi
Дата 11.4.2007, 14:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 887
Регистрация: 8.6.2006
Где: Russia

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



Именно с доков я и начинал)
Там-же есть сорец, весьма похожий на мой...

UPD:
http://poe.perl.org/?POE_Cookbook/Tk_Interfaces вот еще вспомнил

Это сообщение отредактировал(а) KSURi - 11.4.2007, 14:51


--------------------
Died at Life.pl line 21
PM Jabber   Вверх
shamber
Дата 11.4.2007, 14:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1422
Регистрация: 5.9.2006
Где: Россия

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



а не run() ?

PS ступил скорее всего звиняйте. smile

Это сообщение отредактировал(а) shamber - 11.4.2007, 15:01
PM MAIL Jabber   Вверх
KSURi
Дата 11.4.2007, 15:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 887
Регистрация: 8.6.2006
Где: Russia

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



Цитата(shamber @ 11.4.2007,  14:58)
а не run() ?

Не играет никакой роли. Просто при опускании скобок, парсер Perl, не тратит время на поиск аргументов для функции.


--------------------
Died at Life.pl line 21
PM Jabber   Вверх
nitr
Дата 11.4.2007, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2543
Регистрация: 10.2.2006
Где: Россия :)

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



KSURi, проверил твой код и во FreeBSD и в WinXP, у меня запустился и работает, открыл так сказать "пустое" окошко. Да твой код по пое-кукбуку написан верно. Может попытаться пересобрать Tk и POE?


Цитата(KSURi @ 11.4.2007,  15:03)
Цитата(shamber @ 11.4.2007,  14:58)
а не run() ?

Не играет никакой роли. Просто при опускании скобок, парсер Perl, не тратит время на поиск аргументов для функции.

кроме того у нас перл, а не си.

Это сообщение отредактировал(а) nitr - 12.4.2007, 10:50


--------------------
PM   Вверх
nitr
Дата 12.4.2007, 10:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2543
Регистрация: 10.2.2006
Где: Россия :)

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



Варнинги тоже не выводит... так что мне не удалось воссоздать ошибку.
Perl 5.8.x
POE и Tk со CPAN


--------------------
PM   Вверх
KSURi
Дата 12.4.2007, 12:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 887
Регистрация: 8.6.2006
Где: Russia

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



Только что заново стянул POE и кучу компонентов из PPM. Не помогло =\

Код

This is perl, v5.8.8 built for MSWin32-x86-multi-thread

POE и Тк из PPM

Это сообщение отредактировал(а) KSURi - 12.4.2007, 12:09


--------------------
Died at Life.pl line 21
PM Jabber   Вверх
Nab
Дата 12.4.2007, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 582
Регистрация: 25.3.2006
Где: Kiev

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



Цитата(KSURi @  12.4.2007,  12:07 Найти цитируемый пост)
POE и Тк из PPM

Думаю вот в этом и проблема, я тоже сначала оттуда брал, но уж слишком они старые, если Tk я не менял, то POE качнул со CPAN последнюю, там некоторые методы просто исчезли, а некоторые работают по другому...

У меня твой скрипт заработал нормально, показал дерьмового цвета окошко с заголовком ... smile
И жило, пока я кнопку закрыть не нажал smile

Версия файла POE.pm у меня 0.38...


--------------------
 Чтобы правильно задать вопрос нужно знать больше половины ответа...
Perl Community 
FREESCO in Ukraine 
PM MAIL   Вверх
KSURi
Дата 12.4.2007, 16:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 887
Регистрация: 8.6.2006
Где: Russia

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



Чтож, после установки из CPAN, все действительно сразу заработало.
Спасибо всем, кто откликнулся.



--------------------
Died at Life.pl line 21
PM Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




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


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

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