Кент Рейсдорф. BORLAND C++BUILDER. Раздел 4
Кент Рейсдорф. BORLAND C++BUILDER. Страница 394
Я хотел бы создавать стыкуемые оперативные панели, которые видел в других приложениях. Могу ли я сделать это в C++Builder?
Вы можете сделать в C++Builder все, что захотите, вопрос только в том, сколько работы это потребует. В C++Builder нет встроенной поддержки стыкуемых оперативных панелей, так что вам придется создать свой собственный вариант с самого начала. Вы можете поискать в различных сетевых источниках компоненты стыкуемых оперативных панелей, созданные независимыми производителями или распространяемые как ус- ловно-бесплатные.
Как мне поместить растровое изображение в строку состояния?
Создайте строку состояния с несколькими панелями. Измените стиль панели, которая должна содержать изображение, на psOwnerDraw. Затем в своем обработчике события OnDrawPanel вызовите метод Draw() класса TCanvas, чтобы вывести изображение в эту панель.
У меня была простая строка состояния, которую я затем преобразовал в составную. Теперь мои подсказки не больше не появляются. В чем ошибка?
Когда вы преобразуете простую строку состояния в составную, необходимо изменить код таким образом, чтобы выводился текст подсказок. Вместо того, чтобы использовать строку
StatusBar->SimpleText = Application->Hint;
вы должны написать следующее:
StatusBar->Panels->Items[0]->Text = Application->Hint В данном случае текст будет выведен в первую панель строки состояния.
Зачем мне беспокоиться об управлении доступом к пунктам меню и кнопкам оперативной панели?
Потому что пользователи ожидают увидеть непротиворечивый интерфейс. Когда определенное действие невозможно (в меню или оперативной панели), соответствующие элементы должны выделяться серым цветом как недоступные. Это дает пользователю визуальную подсказку, что данная команда в принципе возможна, но в настоящий момент неприменима.