Что нового

Калькулятор с поддержкой скинов

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 711
AutoIt: 3.3.4.0
Версия: 1.4

Категория: Графика / GDI+, Математика

Описание: Простой 10-разрядный (не считая "-" и ".") калькулятор с поддержкой скинов и позволяющий производить основные математические операции, такие как сложение, вычитание, умножение деление. Так же возможна работа с памятью ("M+", "M-", "MC" и "MR"). Помимо этого, калькулятор поддерживает операции копирования и вставки (CTRL+C, CTRL+V), причем вставлять можно целые выражения, например "(5 + 5) * 10". В этом случае в калькулятор будет передан резултат вычисления, т.е. "100". Так как число ограничено 10 разрядами, то на экране будет выведен результат округления, но последующие операции с этим числом будут производиться без учета округления, например:

[8][9] -> 89
[/] -> 89
[7] -> 7
[*] -> 12.71428571
[2][1] -> 21
[=] -> 267 (вместо 12.71428571 * 21 = 266.9999999)

Вы можете скачать дополнительные скины для этого калькулятора, один из которых (Dark Classic) уже предустановлен в программу, т.е. калькулятор может работать без установки скинов. Для выбора дополнительных скинов щелкните на окне калькулятора правой кнопкой мыши и выберите пункт "Select skin...", а затем укажите путь к нужному скину (.ini файлу). При желании, Вы можете нарисовать свой собственный скин, в качестве SDK может быть использован скин Dark Classic, как наиболее полный.

Dark Classic (Default)
Автор: Jonas (адаптирован Yashied)



Orange Clouds
Автор: The Kapsules Team (адаптирован Yashied)



White XL
Автор: Yashied



White Minimal
Автор: Yashied



Dark Project
Автор: Garrett


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


Файл: AU3, EXE

Используемые библиотеки: Icons.au3, Restart.au3, WinAPIEx.au3

Скриншот(ы):


Источник: Calculator (оффициальный форум)
Автор: Yashied

Примечания:

  • Калькулятор может работать без каких-либо дополнительных скинов. Скин Dark Classic уже включен в программу по умолчанию и находится в ресурсах .exe файла.
  • Исходный код представлен для ознакомления. Т.к. программа использует дополнительные ресурсы, простой запуск скрипта (.au3) ничего не даст, сначала нужно скомпилировать его в исполняемый файл (.exe) при помощи compile.cmd, который, в свою очередь, испльзует необходимые утилиты. Дабы не раздувать размер файла, эти утилиты не включены в архив, скачать их нужно самостоятельно и положить в соответствующую папку.
  • Для выхода из программы можно нажать клавишу ESC, или щелкнуть правой кнопкой мыши на калькуляторе и выбрать в появившемся меню пункт "Exit", или переместить курсор в правый верхний угол окна программы и щелкнуть на появившейся кнопке "Close", хотя наличие и местоположение этой кнопки определяется установленным скином (см. скриншот).
  • Картинки для скинов могут быть в любом формате, который поддерживает Windows, включая картинки, содержащие прозрачность.
  • Для большей красоты можно использовать два недокументированных параметра, которые находятся в реестре по адресу "HKEY_CURRENT_USER\Software\Calculator". По умолчанию эти параметры не используются и равны нулю.

    FadeOut = (0..100)
    Позволяет задать эффект Fade In/Out во время старта/закрытия программы соответственно. Рекомендуемое значение - (5..20). 0 - не использовать эффект.

    TransOnInactive = (0..255)
    Устанавливает прозрачность для калькулятора, в случае его неактивности. Значение параметра TransOnInactive определяет уровень прозрачности. Рекомендуемое значение - 200. 0 - не использовать эффект.

  • Файл .ini, который определяет скин, должен содержать следующие секции, даже, если они не используются (могут быть пустыми). В противном случае, скин не загрузится и будет использован скин по умолчанию.

    [Info]
    [Background]
    [Icon]
    [Buttons]
    [Digits]
    [Display]

 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4 020
Репутация
622
Очень красиво! Отличная работа
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 711
Обновил программу до версии 1.2.

Список изменений:

  • Добавлена поддержка буфера обмена, и соответственно возможность использования таких комбинаций клавиш, как CTRL+C и CTRL+V (см. список горячих клавиш).
  • Выйти из программы теперь можно с помощью клавиши ESC. Для очистки экрана калькулятора используется клавиша DEL (см. список горячих клавиш).
  • Добавлены два дополнительных скина: White XL и White Minimal (см. скриншоты).
 

Garrett

Модератор
Локальный модератор
Сообщения
3 999
Репутация
964
Спасибо Yashied!
Просто великолепно!
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 711
Может кто-нибудь предложит свой скин для пополнения коллекции?
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 711
Обновил программу (версия не изменилась). Теперь при вставке данных из буфера обмена производится вычисление выражения (если возможно). Например, при вставке строки "(5 + 5) * 10", в калькулятор будет вставлено "100". Как оказалось, очень полезная штука!
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1 574
Репутация
335
Может приведешь пример, как должен выглядеть .ini файл и строение файлов в папке? Как же скин тогда писать? :smile:
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 711
Я это писал в самом начале. :smile:

Yashied сказал(а):
Вы можете нарисовать свой собственный скин, в качестве SDK может быть использован скин Dark Classic, как наиболее полный.
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 711
Обновил программу до версии 1.3.

Список изменений:

  • Улучшен алгоритм загрузки и проверки скинов.
  • Улучшен алгоритм защиты от повторного запуска программы.
  • Немного изменен графический интерфейс для поддержки дополнительных возможностей скинов (пока недокументированы).
  • Немного улучшена производительность.
  • Исправлено несколько незначительных ошибок.
 

Garrett

Модератор
Локальный модератор
Сообщения
3 999
Репутация
964
Скин для калькулятора.

Name: Dark Project
Discription: Skin for Calculator v1.3 © 2010 Yashied
В нём есть три кнопки, которые не функционируют. Но я надеюсь, что функционал калькулятора будет расширяться! :smile:
Жду ваших комментариев!
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 711
Хорошо сделано, спасибо. Скин поставил в шапку.

Garrett сказал(а):
Но я надеюсь, что функционал калькулятора будет расширяться...
Конечно, я добавлю эти кнопки и многие другие. Благо скин не обязательно должен использовать все кнопки сразу, можно и вообще без них обойтись. Это обеспечивает совместимость скинов с разными версиями калькулятора.

:beer:
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 711
Обновил программу до версии 1.4.

Список изменений:

  • Добавлена поддержка следующих кнопок (только для дополнительных скинов) и соответствующих им горячих клавиш: "+/-", "%", "Sqrt", "X^2", "X^Y", "1/X" и "Backspace".
  • Добавлен новый скин - Dark Project (спасибо Garrett'у).
 
V

VitAl2013

Гость
У меня он не запускается, но висит в процессах и кушает 6-8% от проца. Запускал и билдилдил на 3.3.6.0. Скачал "утилиты" запустил compile.cmd, указал Aut2Exe - получил Error Line 0.
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 711
VitAl2013 сказал(а):
У меня он не запускается, но висит в процессах и кушает 6-8% от проца. Запускал и билдилдил на 3.3.6.0. Скачал "утилиты" запустил compile.cmd, указал Aut2Exe - получил Error Line 0.
:wacko:

Причем здесь Aut2Exe? Я про нее ничего не говорил. Нужно скачать утилиты и положить их в папку Utilities в том виде, в котором они находятся в архиве (каждая утилита в своей папке), затем нужно запустить compile.cmd.

Можно запускать и из SciTE, но сначала нужно запустить .exe и выбрать любой дополнительный скин (не умолчальный), чтобы он сохранился в реестре. После этого открывайте .au3 в SciTE и жмите F5. Просто дефолтный скин находится в ресурсах файла, и до компиляции это работать не будет.
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 711
Обновил программу, версия осталась прежней.

Список изменений:
  • Исправлена ошибка, приводящая к утечке памяти.
  • Незначительные изменения кода.
 

FlatX007

Tattoo!
Сообщения
197
Репутация
35
Пользуюсь 1.2 ... вообще ни каких проблем не заметил :-[
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 711
FlatX007 сказал(а):
Пользуюсь 1.2 ... вообще ни каких проблем не заметил.
Она в последующих версиях всплыла. Это было в функции _WinAPI_UpdateLayeredWindowEx(). В версии 1.2 я ее не использовал.
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 711
Друзья, скажите, кто пользуется этим калькулятором, какой скин вам больше нравится.
 

Bloodrinker

<Блуждающий...>
Сообщения
228
Репутация
19
у меня стандартный стоит, больше всего нра) вот его еще бы в гаджеты рабочего стола как нибудь привинтить)
 
Верх