Компонент и контейнер - Информатика, програмиране
3.1 Компонент и контейнер
Основната концепция за графичен потребителски интерфейс (GUI) е компонент на графична система. На руски тази дума просто означава съставна част, елемент на нещо, но в графичен интерфейс тази концепция е много по-конкретна. Това означава отделен, напълно дефиниран елемент, който може да се използва в графичен интерфейс независимо от други елементи. Например това е поле за въвеждане, бутон, лента с менюта, лента за превъртане, радио бутон. Самият прозорец на приложението също е негов компонент. Компонентите могат да бъдат невидими, например панел, който обединява компоненти, също е компонент.
Няма да се изненадате да научите, че в AWT компонентът е обект от класа Component или обект от всеки клас, който разширява класа на компонентите. Класът компонент съдържа общи методи за работа с всеки компонент на графичен потребителски интерфейс. Този клас е центърът на библиотеката AWT.
Всеки компонент се поставя в контейнер, преди да се покаже на екрана. Контейнерът знае как да постави компонентите на екрана. Разбира се, в Java контейнерът е обект от класа Container или някое от неговите разширения. Директният наследник на този клас е класът jcomponent - върхът на йерархията на много класове в библиотеката Swing.
След като създадете компонент - обект от класа Component или неговото разширение, трябва да го добавите към създадения по-рано обект на класа контейнер или неговото разширение, използвайки един от методите add ().
Класът Container сам по себе си е невидим компонент; той разширява класа Component. По този начин, заедно с компонентите, контейнерите могат да се поставят в контейнер, в който се намират някои други компоненти, като по този начин се постига голяма гъвкавост при подреждането на компонентите.
Основният прозорец на приложението, активно взаимодействащ с операционната система, трябва да бъде изграден в съответствие с правилата на графичната система. Той трябва да се движи по екрана, да преоразмерява, да реагира на действие-
чрез мишка и клавиатура. Прозорецът трябва да съдържа поне следните стандартни компоненти.
- Заглавна лента, от лявата страна на която трябва да поставите бутона на контекстното меню, а от дясната страна - бутоните за минимизиране и максимизиране на прозореца и бутона за затваряне на приложението.
- По избор лента с менюта с елементи от падащото меню.
- Хоризонтални и вертикални ленти за превъртане.
- Прозорецът трябва да бъде заобиколен от граница, отговаряща на мишката.