GL2D_GUI
1.0.0
Collecté sur la communauté de Delphi 10.4
ps: Отрисовка использует старый формат вывода изображения через glBegin/glEnd, в принципе для своих задач он подходит, вершин которые передаются с CPU->GPU не так много как с 3D объектами. Возможно когда нибудь и будет переделываться на буффер VBO
Liste des fichiers (pertinente pour la version 2.14):
| Déposer | Description |
|---|---|
GUIv2 | Основная папка |
| dlguifont.pas | Travailler avec des polices |
| dlguiform.pas | Forme avec une liste de composants |
| dlguiformlist.pas | Liste des formulaires incl. leur affichage (formlist.raw) |
| dlguiObject.pas | La classe principale à partir de laquelle les composants et les formes sont hérités |
| dlguimouse.pas | Composant pour afficher le curseur de la souris |
| dlguipaletteheelper.pas | Le module pour travailler avec une palette, selon les coordonnées, détermine la couleur de la palette |
| dlguitypes.pas | Types et classes utilisées dans les modules |
| DlGuiverTexController.pas | Module pour travailler avec des pics dans les objets (composants) |
| dlguixmlserial.pas | Sérialisation des classes GUI au format XML |
components | Компоненты |
| Composants dlguibevel.pas | Cadre |
| Composants dlguicheckbox.pas | Chekbox (commutateur) |
| Composants dlguicombobox.pas | Liste d'ouverture |
| composants dlguieditbox.pas | Champ de saisie du texte (une seule ligne) |
| composants dlguiimage.pas | Image |
| composants dlguilabel.pas | Texte (peut être multiplié) |
| Composants dlguilistbox.pas | Liste des lignes |
| Composants dlguiMainMenu.pas | Le menu principal |
| composants dlguipanel.pas | Panneau sans composants peut être remplacé par biseau (cadre) |
| Composants dlguiprogressbar.pas | Indicateur de chargement |
| Composants dlguiiradiobutton.pas | Commutateurs de sélection |
| Composants dlguitable.pas | Tableau |
| Composants dlguitrackbar.pas | Sélection d'une valeur numérique à l'aide d'un curseur |
| composants dlguitracker.pas | Le tracker (horizontal / vertical) est utilisé pour des composants tels que (ComboBox, Listbox, Table) ... |
Textures | Модули для работы с текстурами |
| Textures dltextureLoader.pas | Module pour télécharger des textures de format (BMP, JPG, JPEG, TGA, PNG) |
| Textures dlTextUrelist.pas | Gestion de la texture (recherche, addition, suppression) |
OpenGL | Модуль для работы с OpenGL |
| OpenGL dlopengl.pas | Travailler avec le framework OpenGL |
Image | Список изображений |
| Image logo.png | Logo |
| Image guipalette.bmp | Palette de composants |
| Image Consolas | Font Consolas |
| Images gadugi | Font Gagii |
| Images Verdana | Font Verdana |
Tous les composants sont hérités de la classe dlguiObject.tguiObject pour télécharger la texture, les modules sont utilisés
Pour commencer à utiliser GUI, vous avez besoin
Formulaire:
uses dlGUIForm;
...
var Form : TGUIForm; // Класс формы
...
// Загрузка текстур
TextureList.Add( ' GUI ' , ' .ImageGUIPallette.bmp ' , GL_RGB, GL_MODULATE, GL_NEAREST, True, RGB( 252 , 52 , 252 ));
TextureList.Add( ' GUIFont ' , ' .ImageVerdanaVerdana 8.fgl.png ' , GL_RGBA, GL_MODULATE, GL_LINEAR);
...
Form:= TGUIForm.Create( ' FormName ' , TextureList.Search( ' GUI ' )); // Создание класса формы
Form.Caption:= ' Заголовок формы ' ;
Form.SetRect( 0 , 0 , 200 , 100 ); // Начальная позиция и размер формы
Form.Font.SetTextureLink(TextureList.Search( ' GUIFont ' )); // Установка шрифта формы
// Добавление формы в список форм
FormList.AddForm(Form);
... (render)
FormList.Draw; При добавлении на форму компонентов если у компонента не указана текстура и шрифт, то она назначается такой же как у формы
Bouton (bouton):
uses dlGUIButton;
...
var Button: TGUIButton;
...
Button:= TGUIButton.Create; // Создание класса кнопки
Button.SetRect( 10 , 10 , 200 , 10 ); // Позиция и размер кнопки
Button.Caption:= ' Текст кнопки ' ; // Текст
Button.OnClick:= Proc; // Вызываемая процедура
// Включить всплывающую подсказку
Button.Hint.Enable:= True;
Button.Hint.Text := ' Текст всплывающей подсказки ' ;
Button.Flat := False; // Скрыть/Показать рамку кнопки
// Если добавляем на форму
Form.AddComponent(Button);
// Если просто нужно отобразить
Button.Draw;Champ de saisie:
uses dlGUIEditBox;
...
var EditBox: TGUIEditBox;
...
EditBox:= TGUIEditBox.Create;
EditBox.SetPos( 10 , 10 , 200 , 20 );
Form.AddComponent(EditBox);