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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> хэш в строке статуса 
:(
    Опции темы
alyam
Дата 31.8.2006, 06:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



$U::parry = 0;
%U::Par=(
                  0 => "",
                  3 => "ОТР",
                  2 => "СБ",
                  1 => "ПН");

$crap = '';
Status::new_sv( $U::Par{$U::parry}, 4, 15 ); Status::new_sv( $crap, 1 ); 

затем я где-то меняю $U::parry=1;

поидее в строке статуса должно отразиться ПН, но ничего не отображается.
если написать Status::new_sv( $U::Par{1}, 4, 15 ); то тогда отображается,
помогите разобраться в чем ошибка?


PM MAIL   Вверх
sharq
Дата 31.8.2006, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Perl Liker
**


Профиль
Группа: Участник
Сообщений: 841
Регистрация: 13.12.2004
Где: Ростов-на-Дону

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



alyam, интересно про какой модуль идет речь?


--------------------
[color=gray]There's More Than One Way To Do It[/color]
PM MAIL WWW ICQ Skype   Вверх
alyam
Дата 31.8.2006, 19:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



да модуль status то стандартный.

sub new_sv($;$$) {
  my $y=0;
  my $w=$_[1]||length($_[0]);
  my $c=$_[2];
  my $val=$_[0]||'';
  $c=$Conf::statusfg if (!defined($c));
  eval {
    tie $_[0],'Status',$y,$w,$c,$val;
  };
  if ($@) {
    if ($@ =~ /^Modification of a read-only value attempted/) {
      my $tmp=$_[0];
      tie $tmp, 'Status', $y, $w, $c, $val;
      push(@constants,\$tmp);
    } else {
      die $@;
    }
  }
  refresh_line($svars[$y]) if $ready;
}


Это сообщение отредактировал(а) alyam - 31.8.2006, 19:36
PM MAIL   Вверх
amg
Дата 1.9.2006, 06:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



В моем понимании стандартный модуль - это который есть в любом дистрибутиве Perl. А модуля Status я не нашел даже на CPAN'е. И потом, может не в этом модуле дело, раз Status::new_sv($U::Par{1}... работает, а Status::new_sv($U::Par{$U::parry}... - нет. Здесь фигурирует еще модуль U (которого тоже не на CPAN'е). Например, модуль U может быть устроен так, что $U::parry всегда 0.
PM MAIL   Вверх
sharq
Дата 1.9.2006, 09:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Perl Liker
**


Профиль
Группа: Участник
Сообщений: 841
Регистрация: 13.12.2004
Где: Ростов-на-Дону

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



alyam, 
Цитата(alyam @  31.8.2006,  07:57 Найти цитируемый пост)
затем я где-то меняю $U::parry=1;


а затем вызываешь?
Цитата(alyam @  31.8.2006,  07:57 Найти цитируемый пост)
Status::new_sv( $U::Par{$U::parry}, 4, 15 );





--------------------
[color=gray]There's More Than One Way To Do It[/color]
PM MAIL WWW ICQ Skype   Вверх
amg
Дата 1.9.2006, 12:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Цитата(amg @ 1.9.2006,  06:21)
...модуль U может быть устроен так, что $U::parry всегда 0.

Глупость, похоже, написал
PM MAIL   Вверх
alyam
Дата 2.9.2006, 00:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



вообще Status::new_sv( $U::Par{$U::parry}, 4, 15 ) только в начале программы.
как я понял, если переменную изменить, то строка статуса обновится
PM MAIL   Вверх
sharq
Дата 4.9.2006, 10:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Perl Liker
**


Профиль
Группа: Участник
Сообщений: 841
Регистрация: 13.12.2004
Где: Ростов-на-Дону

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



alyam, 
Цитата(alyam @  2.9.2006,  01:47 Найти цитируемый пост)
вообще Status::new_sv( $U::Par{$U::parry}, 4, 15 ) только в начале программы.
как я понял, если переменную изменить, то строка статуса обновится 

нет.

 smile 


--------------------
[color=gray]There's More Than One Way To Do It[/color]
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


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

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


 




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


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

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