OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Понедельник, 23 Октябрь, 2017 16:36

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 14 ] 
Автор Сообщение
 Заголовок сообщения: Простая кнопка (Command Button)
СообщениеДобавлено: Вторник, 10 Октябрь, 2017 15:59 

Зарегистрирован: Воскресенье, 06 Август, 2017 19:33
Сообщения: 33
Как сделать кнопку недоступной для нажатия программно? Почему-то не срабатывает охранник.
Код:
MODULE Gu;(*эксперимент с охранником*)
IMPORT Dialog;

PROCEDURE A*;(**)
END A;

PROCEDURE AGuard* (VAR par: Dialog.Par);
BEGIN
par.disabled := TRUE
END AGuard;

END Gu.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Простая кнопка (Command Button)
СообщениеДобавлено: Вторник, 10 Октябрь, 2017 16:32 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 8825
Откуда: Россия, Орёл
Опечатка какая-то, наверное, при привязке имени охранника у кнопки. Нет?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Простая кнопка (Command Button)
СообщениеДобавлено: Вторник, 10 Октябрь, 2017 16:36 
Аватара пользователя

Зарегистрирован: Воскресенье, 12 Апрель, 2015 18:12
Сообщения: 1043
Откуда: СССР v2.0 rc 1
Вроде, всё верно.
1. Правильно ли привязана охрана в свойстве кнопки?
2. Вообще, должно работать. Ресурсы перезагружал? Форму сохранял?

Что писать в названии процедуры -- тащемта, не так уж и важно. Это лишь соглашение. Я вообще пишу:
Код:
PROCEDURE кнпВыход_Охрана(пКнп: мДлг.Par);
(*

 для справки:

Par = RECORD
   disabled, checked, undef, readOnly: BOOLEAN;
   label: String
END;

*)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Простая кнопка (Command Button)
СообщениеДобавлено: Вторник, 10 Октябрь, 2017 17:38 

Зарегистрирован: Воскресенье, 06 Август, 2017 19:33
Сообщения: 33
Я форму генерирую автоматически, открываю как Aux Dialog. Форму сохранял - не помогает. Версия ВВ 1.5 от Информатики-21 от 09.11.2012.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Простая кнопка (Command Button)
СообщениеДобавлено: Вторник, 10 Октябрь, 2017 18:08 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 8825
Откуда: Россия, Орёл
Ну так нужно в свойствах кнопки Guard указать вручную.
Автоматически Guard не привяжется.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Простая кнопка (Command Button)
СообщениеДобавлено: Среда, 11 Октябрь, 2017 15:50 

Зарегистрирован: Воскресенье, 06 Август, 2017 19:33
Сообщения: 33
Илья Ермаков писал(а):
Ну так нужно в свойствах кнопки Guard указать вручную.
Автоматически Guard не привяжется.

А хорошо было бы, если бы ВВ считывал то, что написано до Guard и определял для какой кнопки требуется какой охранник.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Простая кнопка (Command Button)
СообщениеДобавлено: Среда, 11 Октябрь, 2017 19:08 
Аватара пользователя

Зарегистрирован: Воскресенье, 12 Апрель, 2015 18:12
Сообщения: 1043
Откуда: СССР v2.0 rc 1
Это не реально. Откуда ББ может знать, что именно этот охранник относится именно к этому элементу? К тому же, если это делать автоматом -- теряется гибкость привязки, генерации, свободного создания диалоговых окон.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Простая кнопка (Command Button)
СообщениеДобавлено: Четверг, 12 Октябрь, 2017 16:11 

Зарегистрирован: Воскресенье, 06 Август, 2017 19:33
Сообщения: 33
prospero78 писал(а):
Откуда ББ может знать, что именно этот охранник относится именно к этому элементу?

Вы меня не поняли. Если процедура, с которой сопоставляется кнопка называется Com1, то процедура охранника к этой кнопке называлась бы соответственно Com1Guard. Тогда охранник мог бы привязаться к кнопке при автоматической генерации формы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Простая кнопка (Command Button)
СообщениеДобавлено: Четверг, 12 Октябрь, 2017 16:40 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 1922
Откуда: Красноярск
Александр К писал(а):
prospero78 писал(а):
Откуда ББ может знать, что именно этот охранник относится именно к этому элементу?

Вы меня не поняли. Если процедура, с которой сопоставляется кнопка называется Com1, то процедура охранника к этой кнопке называлась бы соответственно Com1Guard. Тогда охранник мог бы привязаться к кнопке при автоматической генерации формы.

Думаю, что ваша идея имеет право на реализацию.
С английскими идентификаторами понятно, что есть Guard и Notify. Но вот если используются идентификаторы на русском языке? "Охранник" и "Уведомитель"... А как быть с другими языками? Надо ведь быть демократичными, чтобы нововведение работало на всех языках.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Простая кнопка (Command Button)
СообщениеДобавлено: Четверг, 12 Октябрь, 2017 18:22 

Зарегистрирован: Воскресенье, 06 Август, 2017 19:33
Сообщения: 33
Иван Денисов писал(а):
А как быть с другими языками?

Английский - международный язык. :D А если серьёзно, то Вы правы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Простая кнопка (Command Button)
СообщениеДобавлено: Пятница, 13 Октябрь, 2017 12:07 
Аватара пользователя

Зарегистрирован: Воскресенье, 12 Апрель, 2015 18:12
Сообщения: 1043
Откуда: СССР v2.0 rc 1
Если предполагается, что программа не является родственником покемонам -- можно смело писать по русски.
Если есть желание организовать международное сопровождение, то "кнпВыход_Охрана" лучше не делать сразу.
То, что английский -- международный -- ни о чём не говорит. В 1812 таким был французский, а в 1912 -- немецкий. Чуть ранее были греческий, арабский, испанский и где они все?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Простая кнопка (Command Button)
СообщениеДобавлено: Пятница, 13 Октябрь, 2017 13:04 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 477
Откуда: Киев
Немецкий и французский и сейчас входят в список международных языков. Как и русский.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Простая кнопка (Command Button)
СообщениеДобавлено: Пятница, 13 Октябрь, 2017 13:08 
Аватара пользователя

Зарегистрирован: Воскресенье, 12 Апрель, 2015 18:12
Сообщения: 1043
Откуда: СССР v2.0 rc 1
Не сомневаюсь, что немецкий и французский входят в международные языки (и слава Богу).
Но я не представляю себе ситуацию, когда немцы (типа САП), будут давать интерфейс пользователя в виде кнопок на немецком для русских, или АПИ сделают только на немецком. Внутренняя кухня не интересна 99,99% людей. Если не больше. А если интересна, то для этого есть китайцы и индусы))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Простая кнопка (Command Button)
СообщениеДобавлено: Пятница, 13 Октябрь, 2017 14:28 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 7681
Откуда: Троицк, Москва
Comdiv писал(а):
Немецкий и французский и сейчас входят в список международных языков. Как и русский.
Но в первую очередь нужно называть всё же китайский -- язык будущего ))


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 14 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2017, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB