Перейти к содержимому


Фотография

[OC] Модульная оконная библиотека

окна windows gui

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 16

#1 Оффлайн   ECS

ECS
  • Гуру
  • Сообщений: 203
  • Уровень сигнала: 0,56%
  • В игре: 4 час. 10 мин.
  • ГородСанкт-Петербург

Награды

   10                  

Отправлено 21 Сентябрь 2015 - 05:21

*
Популярное сообщение!

e73f9f3330e76533027342d6e3f157f4.png
 
Хочу поделится с вами своей библиотекой, которую использую практически в каждой программе с графическим интерфейсом. С ее помощью можно генерировать любые "окна" на свой вкус, работать с ними, а затем получать результат работы в обычном массиве.
 
Cкачать библиотеку:

pastebin get wtWVFpKZ lib/windows.lua

Подробное описание основной функции и ее аргументов:

Спойлер

 

Примеры работы с библиотекой:

Спойлер

Сообщение отредактировал EliteClubSessions: 21 Сентябрь 2015 - 10:57


#2 Оффлайн   SergOmarov

SergOmarov
  • Пользователи
  • Сообщений: 564
  • Уровень сигнала: 0,35%
  • В игре: 2 час. 36 мин.

Награды

     

Отправлено 21 Сентябрь 2015 - 08:36

Перечисли преимущества по сравнению с forms, по исходному коду я пока не вижу, разве, что недостаток: куча лишних функций в начале, вроде работы с жесткими дисками.


Ты бы вырезал только окна из всей либы.



#3 Оффлайн   ECS

ECS
  • Автор темы
  • Гуру
  • Сообщений: 203
  • Уровень сигнала: 0,56%
  • В игре: 4 час. 10 мин.
  • ГородСанкт-Петербург

Награды

   10                  

Отправлено 21 Сентябрь 2015 - 09:08

Перечисли преимущества по сравнению с forms, по исходному коду я пока не вижу

 

Преимущества? Минимализм, простой однострочный синтаксис, автоматическое позиционирование, наличие слайдеров/селекторов/свитчей/текстовых полей. И вообще что за глупости, это две совершенно разные библиотеки с различными целями и функционалом, крайне странно их сравнивать.

 

Forms - серьезная либа, предназначенная для создания основы Window-based программ, данная же либа создавалась с целью встраивания в готовый софт, дабы упростить его.

 

А насчет "лишнего кода" - убрал, ибо действительно глаза мозолило.


Сообщение отредактировал EliteClubSessions: 21 Сентябрь 2015 - 12:34

  • SergOmarov это нравится

#4 Оффлайн   SergOmarov

SergOmarov
  • Пользователи
  • Сообщений: 564
  • Уровень сигнала: 0,35%
  • В игре: 2 час. 36 мин.

Награды

     

Отправлено 21 Сентябрь 2015 - 11:11

Forms - серьезная либа, предназначенная для создания основы Window-based программ, данная же либа создавалась с целью встраивания в готовый софт, дабы упростить его.
 А я forms использую для всего, и для замены, и для новых проектов)

#5 Оффлайн   ECS

ECS
  • Автор темы
  • Гуру
  • Сообщений: 203
  • Уровень сигнала: 0,56%
  • В игре: 4 час. 10 мин.
  • ГородСанкт-Петербург

Награды

   10                  

Отправлено 21 Сентябрь 2015 - 12:29

А я forms использую для всего, и для замены, и для новых проектов)

 

Так используй, запрещает кто-то что ли? Можно и в универ, находящийся в 50 метрах от дома, ехать через северо-запад, это уже вопрос личностных привычек и предпочтений. Зачем оффтопить-то? хд


  • Fingercomp, Kartze и Laine_prikol это нравится

#6 Оффлайн   LeshaInc

LeshaInc
  • Пользователи
  • Сообщений: 1 204
  • Уровень сигнала: 15,61%
  • В игре: 116 час. 32 мин.
  • ГородЛуна

Награды

                       

Отправлено 21 Сентябрь 2015 - 14:45

Если либа — модульная, то можно как-то написать свой модуль, наверное?

#7 Оффлайн   SergOmarov

SergOmarov
  • Пользователи
  • Сообщений: 564
  • Уровень сигнала: 0,35%
  • В игре: 2 час. 36 мин.

Награды

     

Отправлено 21 Сентябрь 2015 - 15:31

Не, он , наверное, имел ввиду, что она у него модульная...



#8 Оффлайн   LeshaInc

LeshaInc
  • Пользователи
  • Сообщений: 1 204
  • Уровень сигнала: 15,61%
  • В игре: 116 час. 32 мин.
  • ГородЛуна

Награды

                       

Отправлено 21 Сентябрь 2015 - 17:43

Не, он , наверное, имел ввиду, что она у него модульная...

Если она модульная — то мы можем легко загружать и использовать кастомные модули. Где этот функционал, в чем заключается модульность?

#9 Оффлайн   ECS

ECS
  • Автор темы
  • Гуру
  • Сообщений: 203
  • Уровень сигнала: 0,56%
  • В игре: 4 час. 10 мин.
  • ГородСанкт-Петербург

Награды

   10                  

Отправлено 21 Сентябрь 2015 - 20:19

Если она модульная — то мы можем легко загружать и использовать кастомные модули. Где этот функционал, в чем заключается модульность?

 

Если либа модульная - это означает, что она имеет несколько готовых модулей (компонентов, элементов, пресетов, объектов) и возможность их подключения по желанию. Создание и подключение кастомных модулей никак не подразумевается термином "модуль". Давайте не будем заниматься казуистикой и построчно выискивать причины для критики каждой софтины  ;)



#10 Оффлайн   SergOmarov

SergOmarov
  • Пользователи
  • Сообщений: 564
  • Уровень сигнала: 0,35%
  • В игре: 2 час. 36 мин.

Награды

     

Отправлено 22 Сентябрь 2015 - 08:05

Ему просто хотелось удобных расширений)



#11 Оффлайн   SergOmarov

SergOmarov
  • Пользователи
  • Сообщений: 564
  • Уровень сигнала: 0,35%
  • В игре: 2 час. 36 мин.

Награды

     

Отправлено 22 Сентябрь 2015 - 09:42

Кстати, пойду сделаю такую хрень для forms)


Сообщение отредактировал SergOmarov: 05 Октябрь 2015 - 15:24


#12 Оффлайн   1Ridav

1Ridav

    Орден К.А.

  • Администраторы
  • Сообщений: 278
  • Уровень сигнала: 4,41%
  • В игре: 32 час. 57 мин.

Награды

            2      

Отправлено 11 Декабрь 2015 - 23:59

Можно ли размещать объекты не только вертикально по отношению друг к другу, но и горизонтально в виде строки? Разные типы объектов

#13 Оффлайн   ECS

ECS
  • Автор темы
  • Гуру
  • Сообщений: 203
  • Уровень сигнала: 0,56%
  • В игре: 4 час. 10 мин.
  • ГородСанкт-Петербург

Награды

   10                  

Отправлено 15 Декабрь 2015 - 08:32

Можно ли размещать объекты не только вертикально

Не-а



#14 Оффлайн   danshat

danshat
  • Пользователи
  • Сообщений: 50
  • Уровень сигнала: 0,31%
  • В игре: 2 час. 18 мин.
  • Городст. Мирный

Награды

     

Отправлено 01 Апрель 2016 - 19:45

Великолепная библиотека. Просто класс. Наверное лучшая, по простоте и вообще кастомизабельности таких не найти для меня. Пускай тру-мега-прогеры юзают forms или сами пишут, но я буду юзать сею либу.


  • Laine_prikol это нравится

#15 Оффлайн   vlad1vv1

vlad1vv1
  • Пользователи
  • Сообщений: 22
  • Уровень сигнала: 4,2%
  • В игре: 31 час. 20 мин.

Отправлено 22 Апрель 2018 - 10:22

Можно ли сделать вертикальное меню из этих кнопок? Покажите пример пожалуйста. Ну и при нажатии, что-бы что то  происходило, например открывало текстовый файл.
P.S. Непонятно, как задать действие на кнопку или в Selector.


Сообщение отредактировал vlad1vv1: 22 Апрель 2018 - 10:42


#16 Оффлайн   ECS

ECS
  • Автор темы
  • Гуру
  • Сообщений: 203
  • Уровень сигнала: 0,56%
  • В игре: 4 час. 10 мин.
  • ГородСанкт-Петербург

Награды

   10                  

Отправлено 22 Апрель 2018 - 11:45

@vlad1vv1 Этой либе сто лет в обед, и использовать ее нет особого смысла ввиду наличия более продвинутых аналогов. Возьми GUI, меньше геморроя будет. Там тебе и примеры, и картиночки, и вообще до мелочей все расписано:

https://github.com/I...entation/GUI.md

 

А для создания вертикального меню из кнопок воспользуйся одним из примеров в доке:

local GUI = require("GUI")

-------------------------------------------------

local mainContainer = GUI.fullScreenContainer()
mainContainer:addChild(GUI.panel(1, 1, mainContainer.width, mainContainer.height, 0x2D2D2D))

-- Создаем вертикально ориентированный список
local verticalList = mainContainer:addChild(GUI.list(3, 2, 25, 30, 3, 0, 0xE1E1E1, 0x4B4B4B, 0xD2D2D2, 0x4B4B4B, 0x3366CC, 0xFFFFFF, false))
verticalList:addItem("Hello world")
verticalList:addItem("This is test").onTouch = function()
   -- Сделать что-то при нажатии
end
verticalList:addItem("Beautiful")
verticalList:addItem("Like a shit")

-------------------------------------------------

mainContainer:drawOnScreen(true)
mainContainer:startEventHandling()


#17 Оффлайн   vlad1vv1

vlad1vv1
  • Пользователи
  • Сообщений: 22
  • Уровень сигнала: 4,2%
  • В игре: 31 час. 20 мин.

Отправлено 22 Апрель 2018 - 14:30

Оп! 

 

 

@vlad1vv1 Этой либе сто лет в обед, и использовать ее нет особого смысла ввиду наличия более продвинутых аналогов. Возьми GUI, меньше геморроя будет. Там тебе и примеры, и картиночки, и вообще до мелочей все расписано:

https://github.com/I...entation/GUI.md

 

А для создания вертикального меню из кнопок воспользуйся одним из примеров в доке:

local GUI = require("GUI")

...

mainContainer:drawOnScreen(true)
mainContainer:startEventHandling()

Оп! Спасибо! Но я хотел  c попроще фронт эндом. А вообще я задумал типа help через очки. Пишешь прогу, а в HUD описание какое-нибудь. Поэтому это слишком круто для очков. Я думал по кнопочкам или клавишами текст перелистывать.


Сообщение отредактировал vlad1vv1: 22 Апрель 2018 - 14:33






Темы с аналогичным тегами окна, windows, gui

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных