Как сделать интерфейс типа NeoPlanet
С момента появления электронного дневника автор получил много писем, и немало из них интересовались интерфейсом программы и спрашивали автора, как создать такой эффект интерфейса. Метод производства теперь интегрирован в демонстрационную программу активной программы, чтобы единообразно отвечать всем друзьям. На самом деле, создать такой эффект интерфейса, подобный NeoPlanet, несложно. Друзья, которые немного знают о C++Builder, поймут истину, просто взглянув на демонстрационную программу. Ниже приводится краткое описание технических моментов внутри.
● Общая концепция:
Когда мы обычно пишем программы, мы обычно наследуем класс TForm при создании новой формы. TForm является базовым классом формы по умолчанию в VCL, поэтому форма, унаследованная от TForm, может поддерживать только стандартный стиль интерфейса Windows. Но если вы не наследуетесь напрямую от класса TForm, а сами пишете класс формы (например, TNeoForm), этот класс берет на себя сообщения большинства операций с формой (таких как изменение размера, развертывание и минимизация и т. д.) и модифицирует встроенный стандартный интерфейс Windows, а затем, когда вы создаете новую форму, все это будет унаследовано от TNeoForm, так что все формы в вашем приложении будут иметь стиль и характеристики TNeoForm, и цель будет достигнута.
● Дизайн TNeoForm:
Полная исходная программа TNeoForm включена в демонстрационную программу. Она не очень длинная, всего 560 строк. В ней можно разобраться после внимательного изучения. Необходимо отметить, что TNeoForm еще не идеален, и есть много областей, которые нуждаются в улучшении. Если кто-то из друзей заинтересован в его улучшении, я надеюсь, что вы сможете отправить копию оригинальному автору (электронная почта: haoem@126. ком).
● На что следует обратить внимание:
1. TNeoForm в настоящее время не может обрабатывать горячие клавиши меню (например, Alt+X и т. д.). Единственный способ — установить для KeyPreview новой формы значение true, а затем использовать программу для обработки горячих клавиш меню в событии KeyDown. форма.
2. Чтобы указать, может ли пользователь изменять размер формы, необходимо присвоить значение Sizeable в конструкторе формы или событии FormCreate.
3. Чтобы указать, имеет ли форма кнопку развертывания или кнопку свертывания, вы можете напрямую установить свойство BorderIcons формы в обозревателе объектов (инспекторе объектов) в C++Builder.
Автор: Хао Сингэн
15 октября 1999 г.
Расширять