Проект GameMaker Studio2
UI-фреймворк от студии «Маленький жук».
Есть два метода использования.
Этот UI-фреймворк основан на sai_oView, и все view наследуются от него.
При создании верхнего уровня view укажите noone в качестве параметра parent:
//Создаём верхний уровень view в координатах (100, 100) игры
page_root = sai_scrViewNew(noone, sai_oView, 100, 100);
Создавая дочерний view, укажите id в качестве параметра parent:
//Создаем кнопку под page_root, её координаты относительно (20, 20)
var btn = sai_scrViewNew(page_root, sai_oButton, 20, 20);
Создайте пустой объект, наследуйте от sai_oView и определите свойства в событии create. Затем перепишите user_event0 для рисования самого себя, например, для sai_oTextView:
/// @description Рисование текста
// Вы можете написать свой код в этом редакторе
// Наследуем родительское событие
event_inherited();
//Очищаем поверхность
draw_clear_alpha(c_white, 0);
//Рисуем текст
draw_set_valign(fa_top);
draw_set_halign(fa_left);
draw_text(0, 0, text);
//Тип view для различения типов и экземпляров
view_type = "view";
view_id = 0;
//Является ли это элементом GUI, действует только для родительского элемента
view_is_gui = true;
//Фокус view, по умолчанию нет
view_focus = false;
//Список дочерних view
view_child_list = ds_list_create();
//Родительский view
view_parent = noone;
//Отображается ли view
view_show = true;
//Ширина и высота view
view_width = sprite_width;
view_height = sprite_height;
view_width_ = sprite_width;
view_height_ = sprite_height;
view_width = view_width>0?view_width:1;
view_height = view_height>0?view_height:1;
//Поверхность view
view_surface = surface_create(view_width,view_height);
//Идентификатор события view
enum VIEW_EVE
{
DRAW = 0, //Рисование
RESIZE, //Изменение размера
MB_L_DOWN = 2, //Левая кнопка мыши
MB_L_PRES,
MB_L_RELE,
MB_R_DOWN = 5, //Правая кнопка мыши
MB_R_PRES,
MB_R_RELE,
MB_M_DOWN = 8, //Средняя кнопка мыши
MB_M_PRES,
MB_M_RELE
};
//Возвращаемое значение события, по умолчанию true
for(var i=0;i<20;i++)
{
//Перехватываем ли мы события мыши
view_mb_event_inter[i] = true;
view_event_re[i] = true;
//Событие соответствует user_event_id
view_event_id[i] = i;
}
//Тип события мыши
view_mb_event_type = VIEW_EVE.MB_L_DOWN;
//Координаты касания хранятся
tap_x = 0;
tap_y = 0;
//Цвет фона
view_clear_bkg = false;
view_bkg_color = 0x83AF9B;
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )