Подписка

Twitter

Друзья блога

Опрос

Каких статей следует публиковать больше в блоге?

View Results

Loading ... Loading ...

Система Orphus

Блоги и сообщества

DelphiFeeds.ru - Все Delphi-блоги Рунета О раскрутке блога по программированию

Счётчики


Анализ веб сайтов

Рейтинг блогов

  • 07Feb

    В общих чертах про ошибки и глюки Ribbon Controls я говорил ещё в самом самом первом посте про эти новые компоненты. Конечно, не много и рассмотрел не все возможные проблемы, но тем не менее уже тогда было известно, что Ribbon Controls в RAD Studio имеет даже не просто много, а офигенно много глюков и использовать эти компоненты в разработках стоит весьма осторожно.

    Скажу по себе, Ribbon Controls в работе я использовал всего два раза: первый раз, когда моему работодателю захотелось “чтобы было красиво”, тогда пришлось более менее основательно посмотреть на Ribbon и собрать некое подобие MS Office для экологов. Второй раз – буквально две недели назад, опять же по большей части не по собственному желанию. И оба раза я сталкивался с одними и теме же проблемами, которые приходилось решать “по горячим следам”. 

    Я не сторонник навязывать кому-либо свою точку зрения, но в сложившейся ситуации с глючностью Ribbon у нас есть, по-моему, всего три выбора:

    1. Самый простой - не использовать. Этот путь могу себе позволить те, кто финансово не заинтересован в разработке, например, любители, которые пишут софт “под себя”. Зачем лишний раз биться головой об стену и злиться, пытаясь сделать красивый интерфейс? Есть достаточно других компонентов, хотя бы те же Alpha Skins – используйте их и не мучайтесь.
    2. Использовать то, что дает нам RAD Studio и приспосабливаться к глюкам пока не выйдет новая версия и там, что-либо может быть исправится. К сожалению, этот путь для меня и тех, кто не может по каким-либо причинам позволить себе третий вариант.
    3. Забыть про то, что есть в RAD Studio и купить набор компонентов от сторонних разработчиков. Т.к. я никогда не имел дела с платными компонентами Ribbon, то сказать сколько там глюков – не могу, но видимо меньше, т.к. все-таки компоненты покупаются и используются.

    Именно по той причине, что мой выбор №2 я и пытаюсь разобраться с Ribbon Controls, именно по этой причине и появились в блоге посты про работу с Ribbon без мыши. Кстати, спасибо тем, кто не только читает посты и использует какие-то моменты из них в своей работе, но и советует, подсказывает мне какие-то моменты. Например, в этой теме я узнал от bambarmia как исправить глюк, когда пропадает прозрачность.

    Сегодня я хотел бы рассмотреть один из самых, на мой взгляд, противных глюков в Ribbon Controls при работе в дизайнере формы. Глюк проявляется хаотично и никогда не знаешь, когда пора начинать злиться. Заключается он в следующем: в какой-то момент работы в дизайнере напрочь пропадает возможность выбора установленного в группе Action’а. Казалось бы – мелочь и на функциональность будущей программы не влияет, но бесит жутко. Приходится либо добавлять в группу ещё один “левый” Action, либо перезагружать проект – тогда глюк самоликвидируется на какое-то время. А когда на TRibbon располагается не 10-20, а больше 50 различных Action’ов, то тогда вообще хоть стреляйся, т.к. глюк проявляется особенно часто.

    Я решил не сучить себя вечными перегрузками, переделками и т.д., а просто приучиться использовать структуру проекта (окно Structure, вызываемое нажатием клавиш Shift+Alt+F11). В принципе, если сильно захотеть, то привычка вырабатывается  за несколько часов.

    Рассмотрим небольшой пример использования окна “Structure”  при работе с Ribbon Controls. Расположите на форме TRibbon и создайте два или больше Action’ов как показано на рисунке:

    Теперь предположим, что у нас опять проявился глюк, а нам надо добраться до свойств элемента ‘Info’ и изменить размер кнопки на bsSmall.

    Добраться до необходимого элемента через структуру проекта можно как показано на рисунке ниже:

    Выбираем элемент в Structure и получаем необходимые нам свойства в Object Inspector, правда при этом Action все равно не выделяется в дизайнере :) . Но лучше уж так, чем никак.

    Здесь же в Structure можно создавать новые элементы интерфейса. Для этого необходимо выбрать корневой элемент Items и в его контекстном меню выбрать опцию на добавление нового Item’а:

    А дальше уже можно спокойно работать в Инспекторе, назначать изображение, обработчик действия и т.д.

    Использовать или нет предложенный мной вариант – решать только Вам. Я лишь показал один из вариантов работы с Ribbon Controls в условиях глючности. Может есть и другое решение проблемы помимо перезагрузки проекта, добавления нового Action’а или рассмотренного мной сейчас, но мне таковое не известно :) Так что, если оно у вас есть – буду премного благодарен, если расскажите мне о нем.

    -------------------------------
    Любите смотреть фильмы и вас интересуют последние новинки кино? Заходите на themoviesdb.ru и получайте всю необходимую информацию на одном сайте.

    Недавно приобрел себе кондиционер с ионизатором воздуха - прикольная вещь. Жил бы в коттедже, ещё бы тёплый пол Саратов прикупил или, что-нибудь подобное :) А пока живу в простой квартире, то и думать больше приходится про интерьер квартир и обустройство своего "семейного гнезда".
    -------------------------------
    Закладки:
    • Digg
    • del.icio.us
    • Facebook
    • Google Bookmarks
    • RSS
    • FriendFeed
    • LinkedIn
    • Live
    • Twitter

    Похожие записи:

    1. Ribbon Controls в Delphi. Создаем элементы управления “на лету”.
    2. Ribbon Controls в Delphi. Работа без мыши.
    3. Ribbon Controls шаг за шагом. Шаг 2 – дополнительные элементы интерфейса
    4. Ribbon Controls шаг за шагом. Шаг 1 – визуальная разработка интерфейса.
    5. Ribbon Controls шаг за шагом. Шаг 3 – работа со ScreenTips.

    Автор Vlad в 7:55 pm

    Метки: , ,

3 Comments

WP_Cloudy
  • Алексей пишет:

    Есть еще один вариант: отказаться от работы с Ribbon в Delphi и использовать готовые компоненты для Visual Studio. Хотя иногда заказчики требуют разработки на конкретном языке. В этом случае приходится исправлять косяки делфы и настраивать все самостоятельно! ;-) Кстати, а что за Alpha Skins? Что-то не слышал ни разу. Это библиотека что ли? Или набор компонент?
    Влад, не в курсе, есть ли подобные библиотеки или компоненты для Delphi 7?

  • Vlad пишет:

    AlphaSkins – это набор визуальных компонент для Delphi, которые позволяют использовать в приложениях скины. Вместе с компонентами в наборе идут и порядка 20 различных скинов. Компоненты бесплатны для тех кто живет в странах СНГ, ну и тех кто может балакать по русски :) AlphaSkins работают на Delphi по-моему от 6-й до 2010 версии

  • Алексей пишет:

    Спасибо, Влад. Теперь обязательно попробую. :-)

Ваш ответ

Внимание: Все комментарии модерируются, и это может вызвать задержку их публикации. Отправлять комментарий заново не требуется.

Пожалуйста, заключайте программный код в теги [code][/code].