Подключаем наши девайсы к компьютеру. Обсуждаются: порты, протоколы, драйвера, языки программирования и т.д.
Ответить

Ищу книги по созданию интерфейса в Visual Studio

Пт дек 09, 2022 23:03:37

Приветствую. Ищу книги или статьи по созданию графических интерфейсов. Имеется Visual Studio 2010 Pro. Нужны программы с графической визуализацией процессов и показаниям датчиков, в виде рисования графиков, цифровых/стрелочных индикаторов, заполняющихся полосок, мигающих кнопок и т.д. По найденным книгам максимум калькуляторы можно сделать, по принципу ввёл значения, нажал кнопку, получил результат. Гуглить пытался, мягко и цензурно говоря, результат нулевой.

Re: Ищу книги по созданию интерфейса в Visual Studio

Пт дек 09, 2022 23:42:38

https://www.google.com/search?q=create+ ... 1%81%2B%2B

Re: Ищу книги по созданию интерфейса в Visual Studio

Сб дек 10, 2022 13:45:10

Есть холст для рисования.
Изучаете имеющиеся графические функции (GDI, GDI+ и др.) и рисуете что хотите - графики цифровые/стрелочные индикаторы, заполняющихся полоски, мигающие кнопки и т. д.

Re: Ищу книги по созданию интерфейса в Visual Studio

Чт дек 15, 2022 21:35:23

https://urok.1sept.ru/articles/413294
Графические объекты состоят из точек, линий, дуг, окружностей и текста. Так что для создания таких объектов требуется не особо много знаний, но огромная куча терпения. Знаний требует рисование текста с произвольной ориентацией, создание нестандартных окон (форм). Это находится гуглением в интернете и использованием API функций. Как оформить ваш труд в виде стандартного компонента языка (типа крутилки, джойстика, стрелочной головки и тд.) - вот этого я не знаю.
ПС. В пакете с языком часто находится неплохой набор графических элементов.
Вложения
Безымянный.jpg
(239.47 KiB) Скачиваний: 73

Re: Ищу книги по созданию интерфейса в Visual Studio

Сб дек 17, 2022 18:26:11

Информацию на вооружение взял, что-то накопал, что-то подсказали. Спасибо. Посоветовали перейти на Qt, пока там изучаю. Если не пойдёт, буду VS дальше копать. Пока вопрос закрыл.

Re: Ищу книги по созданию интерфейса в Visual Studio

Сб дек 17, 2022 23:04:35

mehanik_all писал(а):Посоветовали перейти на Qt
Надеюсь понимаете что даже самая простая программа будет иметь размер больше 10 МБ?

Re: Ищу книги по созданию интерфейса в Visual Studio

Сб дек 17, 2022 23:11:48

да и небесплатен он и специфичен...

Re: Ищу книги по созданию интерфейса в Visual Studio

Вс дек 18, 2022 13:22:59

Qt официально есть как платный так и бесплатный, VS бесплатный только ломанный, с кучей багов, задолбался его переустанавливать. И не более специфичный чем VS, который даже пустой проект не может скомпилировать без хреналиярда ошибок. Но имеем то что имеем.

Re: Ищу книги по созданию интерфейса в Visual Studio

Вс дек 18, 2022 15:50:32

Как показывает практика, в 99.999% случаев GUI вообще не нужен. Так что, следует 100 раз подумать, прежде чем GUI раскорячивать. Ведь в командной строке намного удобней работать.
Ну и советую таки удалить прошивку для игровых приставок и поставить себе линукс. Ну или хотя бы мастдайку - бубунту какую-нибудь… Ведь забивать гвозди микроскопом — идиотизм, как и пытаться работать на игровой приставке!

Re: Ищу книги по созданию интерфейса в Visual Studio

Вс дек 18, 2022 16:12:31

mehanik_all, Вы какую-то чушь сказали. Вероятно, от незнания ни того, ни другого. Но вряд ли...

Добавлено after 6 minutes 50 seconds:
Eddy_Em, осциллографы-визиографы, всякие прочие приборы на шкафах контроля/управления полагаю, это оставшиеся 0,001% :)))
а так -то оно конечно берем шкафчик с HMI-панелькой и делаем в ней командую строку. Очень удобно. И управлять, и воспринимать информацию. Особенно цифровую.
- дядя военный, а сколько времени?
-12 поделить на 37... слышь, пацан, дели сам, мне некогда.

Воспринимать размер сектора, образованного стрелкой, нарисованной в GUI, мозг может в миллион раз быстрее, чем цифры, и в миллиард - чем в командной строке вспомнить синтаксис команды, затем вспомнить опции, потом получить кучу левых сообщений, перенабрать команду с фильтром... чтож, одно хорошее свойство у командной строки есть: она выдаст результат только тому, кто его действительно хочет и достоин :)

Re: Ищу книги по созданию интерфейса в Visual Studio

Вс дек 18, 2022 17:14:25

Вот только для простейшей автоматизации гуй не годится совершенно! А на баш-скриптах все отлично работает!

Re: Ищу книги по созданию интерфейса в Visual Studio

Вс дек 18, 2022 19:44:25

Ой точно, глупости пишу какие-то, и гвозди забиваю гамма-микроскопами. Может перейдём на аналоговые и логические мс с диодными матрицами и стрелочными индикаторами, и общаться по телеграфу будем, а то эти гуи, ардуино да тисипиайпи всякие, слишком сложно, и нецелесообразно энерго затратно.

Re: Ищу книги по созданию интерфейса в Visual Studio

Пн дек 19, 2022 05:15:38

Если задача - создать описанную систему, то до сих пор существуют Delphi и CBuilder. Для попробовать имеются communiti edition варианты:

Delphi Community Edition
https://www.embarcadero.com/ru/products/delphi/starter

C++Builder Community Edition
https://www.embarcadero.com/ru/products ... er/starter

Вроде как бесплатно пока раздают. Не знаю как сейчас, раньше в комплекте прилагалась куча компонентов для визуализации и для связи с периферией по стандартным протоколам, плюс сторонние VCL-компоненты. Делали в свое время на CBuilder систему управления-визуализации а-ля SCADA на промышленных объектах. Для Linux был Kylix, Lazarus еще.

Если задача - научиться такие системы создавать самому, то стОит посмотреть вышеописанное, чтобы хотя-бы увидеть вживую, как это может выглядеть, какие будут нужны данные для подобных элементов, для некоторых компонентов прилагаются исходники, все не совсем уж с нуля начинать. Ну, или, ТС подробнее описать, что ему требуется.

Re: Ищу книги по созданию интерфейса в Visual Studio

Вт дек 20, 2022 17:49:49

Eddy_Em писал(а):А на баш-скриптах все отлично работает!

Было бы оно так, то не пришлось бы программку на сях переписывать. У стандартного баша с дробями беда.

Re: Ищу книги по созданию интерфейса в Visual Studio

Вт дек 20, 2022 17:56:36

>TEHb<, есть такое, поэтому придумали zsh - там и дроби можно…
Ну, а в баше можно использовать bc - я так и делаю, если нужно что-то простое считать в скрипте (или же awk, если посложней). Вот - немножко из моего ~/.bashrc:
Код:
function round(){ [ "$2" = "" ] && NUM=3 || NUM=$2; echo $1 | sed "s/\([[:digit:]]*\.[[:digit:]]\{,$NUM\}\).*/\1/"; }
function sin(){ echo "scale=10; s($1*a(1)/45);" | bc -l; }
function cos(){ echo "scale=10; c($1*a(1)/45);" | bc -l; }
function tan(){ echo "scale=10; arg=$1*a(1)/45; s(arg)/c(arg);" | bc -l; }
function logn(){ echo "scale=10; l($1);" | bc -l; }
function log(){ echo "scale=10; l($1)/l(10);" | bc -l; }
function pow(){ echo "scale=10; ($1)^($2);" | bc -l; }
function sqrt(){ echo "scale=10; sqrt($1);" | bc -l; }
function exp(){ echo "scale=10; e($1);" | bc -l; }
function bin2hex(){ echo "obase=16;ibase=2;$1" | bc; }
function bin2dec(){ echo "obase=10;ibase=2;$1" | bc; }
function dec2hex(){ echo "obase=16;ibase=10;$1" | bc; }
function lower(){ echo $1 | tr [:upper:] [:lower:]; }
function upper(){ echo $1 | tr [:lower:] [:upper:]; }
function hex2binary(){ echo "obase=2;ibase=16; $(upper $1)" | bc; }
function hex2dec(){ echo "obase=10;ibase=16; $(upper $1)" | bc; }
export pi=$(echo 'scale=10; a(1)*4;' | bc -l)
#'
export PI=$pi

Re: Ищу книги по созданию интерфейса в Visual Studio

Вт дек 20, 2022 18:09:24

Ну вот, уже один костыль есть. Так-то я бы даже готов был на такое пойти, но вот с многопоточностью не совладал, плюнул, и сделал полноценную программу. Прикол в том, что если хочется в прямом эфире наблюдать за показаниями и записывать в файл, то конструкция в скрипте вида
Код:
cat /dev/$gdmdevice | tee voltlog.txt &

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

Re: Ищу книги по созданию интерфейса в Visual Studio

Вт дек 20, 2022 20:01:00

Понятно, что на С все намного приятней. Если мне не хватает "сервера" на netcat и баш-скрипте, а CGI не спасет (т.к. нужен постоянно работающий демон), приходится лепить сишное приложение. Но в опросе клиентов сокета я poll использую, чтобы не плодить потоки (скажем, 32768 клиентов через потоки не реализуешь никак, а буфер poll может быть сколь угодно большим, насколько лимиты позволяют). Понятно, что и pid_max можно в триллион установить, но вот это не избавит от потребления ресурсов каждым клиентом (в случае же полла понадобится лишь немного памяти выделить для нового клиента, и миллион клиентов вряд ли сожрут больше несчастной пары ГБ ОЗУ).

Re: Ищу книги по созданию интерфейса в Visual Studio

Вс дек 25, 2022 15:40:52

Нужны программы с графической визуализацией процессов и показаниям датчиков, в виде рисования графиков, цифровых/стрелочных индикаторов, заполняющихся полосок, мигающих кнопок и т.д.


Если не требуется граф. ускорение используйте функции gdi32 и рисуйте что хотите и в WM_PAINT отображайте отрисованное через двойной буфер, при динамическом отображении используйте BitBlt(...) Где прочитать? - Читайте MSDN с примерами.

По найденным книгам максимум калькуляторы можно сделать, по принципу ввёл значения, нажал кнопку, получил результат. Гуглить пытался, мягко и цензурно говоря, результат нулевой.


Без взаимодействия с GUI т.е. User32 не обойтись, так как User32 отвечает за GUI, создание окна, взаимодействие с окном и т.д. Не конечно можно отрисовать прямо на рабочий стол, но, дескриптор рабочего стола таки придется получать (GetDC(...)) от User32.

Re: Ищу книги по созданию интерфейса в Visual Studio

Вс дек 25, 2022 15:53:40

смешались в кучу кони, люди...

Re: Ищу книги по созданию интерфейса в Visual Studio

Вс дек 25, 2022 17:22:01

смешались в кучу кони, люди...

Ну у тебя собственно да, пользуйся линуксом - непопулярной операционной системой никто тебе не запрещает, ибо WinAPI для тебя и другого непосвященного это темный лес.
А в Windows за графику отвечает подсистема Gdi32.dll, а за окна User32.dll оба "взаимодействуют" на низком уровне с Win32k.sys и ядром NT. Опровергнуть собственно у тебя это не получится, а значит твой коммент очередной пустопорожний высер с целью развести в тематике срач.
Ответить