Добро пожаловать к нам в гости! Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
Тут на форуме не раз возникали замечания на тему, что в NeoBook не хватает тех или иных мелких, но иногда полезных функций. Мне думается, что следует попытаться исправить эту ситуацию с помощью плагина, т.к. VB или Java знают далеко не все необукеры, к тому же, на мой взгляд, плагин намного более эффективное средство нежели чем, например, тот же VBS. С учетом последнего вопроса об анимации внешних необушных окон, решил реанимировать свой самый первый плагин, который давно-давно делал.
В архиве (см.прикрепление) находятся две версии плагина (Design и Runtime), подобие справки, и демка.
27.02.2011
Мышь и клавиатура
zmShowMousePointer - Показать/Скрыть указатель мыши. zmSetMouseMonitor - Установить монитор мыши. zmConfigMouseMonitor - Конфигурирование монитора мыши. zmDelMouseMonitor - Удалить монитор мыши. zmKBChangeLayout - Изменить раскладку клавиатуры для текущего активного окна. zmKBGetLayout - Определить раскладку клавиатуры для текущего активного окна.
zmColorBox - Отобразить диалог выбора цвета. zmFontBox - Отобразить диалог выбора шрифта. zmTrayIcon - Создать в системном лотке значок приложения. zmTrayBalloon - Отобразить сообщение в системном лотке. zmDeleteTrayIcon - Удалить значок из системного лотка. zmExitWindows - Завершение работы: выключение компьютера / перезагрузка /завершение сессии.
Окна
zmFindWindow - Найти окно по заголовку и имени класса. zmGetWindowHandle - Получить дескриптор (HWND) окна по заголовку. zmGetWindowTitle - Получить имя класса и/или текст заголовка окна. zmSetWindowTitle - Установить новый текст заголовка окна. zmShowWindow - Скрыть/Показать/Свернуть/Развернуть/Закрыть окно. zmSetWindowPos - Установить положение окна. zmSetWindowTransparent - Установить уровень прозрачности окна (Windows 2000 и выше). zmCancelWindowTransparency - Отменить свойство прозрачности окна и сделать его непрозрачным (W2k и выше). zmIsWindow - Определить состояние окна (видимость, свернуто, развернуто, и т.п.). zmEnableWindow - Сделать активным неактивное окно. zmDisableWindow - Сделать неактивным окно. zmGetWindowRectangle - Получить положение и размер окна. zmGetForegroundWindow - Получить дескриптор (HWND) верхнего окна в системе. zmSetForegroundWindow - Сделать верхним в системе и активизировать указанное (по дескриптору) окно. zmGetExeNameByHandle - Получить имя файла приложения по дескриптору окна. zmGetDesktopRectangle - Получить координаты области рабочего стола, не скрытой панелью задач.
Окна NeoBook
zmSetCustomWindowPos - Установить положение и размеры внешнего окна (CustomWindow) NeoBook . zmShowCustomWindow - Скрыть/Показать/Свернуть/Развернуть/Закрыть внешнее окно NeoBook. zmIsCustomWindow - Определить состояние внешнего окна NeoBook (видимость, свернуто, развернуто, и т.п.). zmEnableCustomWindow - Сделать активным неактивное внешнее окно NeoBook. zmDisableCustomWindow - Сделать неактивным внешнее окно NeoBook. zmSetCustomWindowTransparent - Установить уровень прозрачности внешнего окна NeoBook (W2k и выше). zmCancelCustomWindowTransparency - Отменить свойство прозрачности внешнего окна NeoBook и сделать его непрозрачным (W2k и выше). zmAnimateCustomWindow - Скрыть/Показать с анимационным эффектом внешнее окно (CustomWindow) NeoBook. zmSetCustomWindowMask - Наложить маску на внешнее окно (CustomWindow) NeoBook. zmShowInRectangle - Отобразить внешнее окно (Custom Window) в объекте прямоугольник
Главное окно
zmSetOnMoveSize - Назначить подпрограмму для события перемещения и/или изменения размера главного окна.
Файлы и папки
zmFolderSize - Определить размер в байтах указанного каталога (папки). zmDeleteFolder - Удалить папку (в т.ч. и непустую). zmOpenWithDefault - Открыть файл в программе "по умолчанию". zmCreateLink - Создать ярлык. zmFileGetAtrribute - Получить указанный атрибут файла или папки. zmFileSetAtrribute - Установить/Снять указанный атрибут файлу или папке. zmClearIECache - Очистить временную папку Internet Explorer.
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Дата: Чт, 15 Января 2015, 16:02 | Сообщение # 1381
Админ NeoBook
Администраторы
Сообщений: 7425
Offline
ЦитатаDEMBEL ()
а какже тогда стандартные нб обьекты то анимируются,
СОБСТВЕННЫМИ МЕТОДАМИ САМОЙ NB! И WinAPI тут совершенно не причем.
ЦитатаDEMBEL ()
анимируется в нужной области средствами GDI
Вся обычная "графика" в винде, в конечном итоге, реализуется средствами GDI (геймерская - через DirectX). DEMBEL, ну проведи ты простой эксперимент - возьми HDC, скажем, для необушной кнопки, нарисуй что-нибудь на ней (все отрисуется исправно), но как только окну потребуется перирисоваться (точнее той области окна, в которой расположена кнопка), все моментально слетит. Потому-что за отрисовку объектов отвечает их собственный метод Paint, и он понятия не имеет, что ты там такое задумал. Но, только совет (предвижу заранее) - даже и не пытайся влезть в Paint. Не получится.
И не надо питать иллюзий на счет "сверхвозможностей" WinAPI, они весьма скромны и обеспечивают только базовую функциональность (фундамент). Если бы ты заглянул в исходники VCL, то понял бы это очень быстро. - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Дата: Чт, 15 Января 2015, 16:38 | Сообщение # 1382
Наш дизайнер
Администраторы
Сообщений: 5959
Offline
ЦитатаPeter ()
СОБСТВЕННЫМИ МЕТОДАМИ САМОЙ NB! И WinAPI тут совершенно не причем.
я понял, я имею ввиду как же так все получается гладко и без проблем, хоть с одним контролом, хоть с группой, контейнером... не может быть чтобы сами контролы как таковые синхронно анимировались, была бы куча глюков, артефактов. вот и интересно какой механизм анимации, раз в нб работает, не может быть чтобы его нельзя было повторить самому для своего контрола... Как задавать вопросы
Дата: Чт, 15 Января 2015, 20:34 | Сообщение # 1383
Админ NeoBook
Администраторы
Сообщений: 7425
Offline
ЦитатаDEMBEL ()
как же так все получается гладко и без проблем,
Ну, если ты будешь рисовать и сразу же (в процессе рисования) выводить картинку на экран, то....
Все проще - в памяти ПК все рисуется на невидимый Bitmap, а по завершение рисования изображение копируется с этого Bitmap туда, куда нужно в один прием.
ЦитатаDEMBEL ()
не может быть чтобы его нельзя было повторить самому для своего контрола...
Да никаких проблем - рисуешь свой "механизм" анимации, и всех делов.
Только имей в виду - свой объект ты анимировать можешь как угодно, а вот необушный хост-прямоугольник - нет. Есть, конечно, один трюк (я его ещё гарику описывал) - создать "двухслойный" объект, на нижний слой поместить изображение того участка необушного окна, которое "закрывает" прямоугольник (кстати и будет эффект прозрачности объекта). В принципе, все просто как мычание, но с одной оговоркой - хост-прямоугольник нельзя двигать. Нет, двигать конечно можно, но придется перерисовывать "подложку" (нижний слой) своего объекта, технически это просто, но вот "в сумме" все будет выглядеть уже "не айс" (с мерцанием).
Ё-моё, DEMBEL, и далась тебе эта анимация, честное слово!
В конце-концов, прилепляй свой объект напрямую к необушному окну (заместо прямоугольника) в нужных координатах, и экспериментируй.
Только есть одна тонкость - в этом случае твой объект всегда будет на переднем плане относительно необушного окна и всех его объектов, и свою "оконную прямоугольность" не потеряет. - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Петр уже как то пробовал сделать такую перекодировку. Там не все так просто как кажется на первый взгляд. Во первых у тебя не весь список. Во вторых тот список что ты указал, можно сделать в самой нб.
Я так понимаю ты хочешь файлы справки конвертировать.
Петр уже как то пробовал сделать такую перекодировку. Там не все так просто как кажется на первый взгляд.
Да там какая-то засада была с перекодировкой из 1251 в 1252 и наоброт, а не с самими мнемониками (компакт-параболиками), т.к. мишему надо было типа, чтоб и русская кодировка "участвовала" (или что-то в этом духе, не помню уже точно).
ЦитатаВадим ()
Плагином то круче же!!
Цитатаmishem ()
А силой мысли и одной кнопкой вообще зашибись.
Цитатаmishem ()
Вадим, а ты я смотрю совсем обленился.
Гм... Сейчас выглянул в окно... думал - красный снег пошел... вроде нет...
ЦитатаВадим ()
Кроме того, уже столько кодировок умеет переводить.
Эх, если бы все было так просто! Для того юникод и придуман был, чтобы с этими кодировками не мучатся. Придумать-то его придумали, да только новые проблемы полезли. И так будет бесконечно!
ЦитатаВадим ()
Мнемоники по любому пригодятся.
Весьма спорное утверждение!
Цитатаmishem ()
только их по моему больше миллиона. :)
Вот и работка привалиа вам, робяты- демократы! Скучать некогда.
Кстати...
ЦитатаВадим ()
добавить в раздел "строки"
Вадим, боюсь, что еще долго я не смогу ничего добавить в это чудо в перьях, т.к. исходник того, что лежит на сайте "канул в лета", а то, что сейчас имеется, находится в раздр..аенном состоянии, и по сути надо почти все переписывать заново. Так-что... Туманно все... туманно...
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
офигеть. Это же сколько работы - заново всё переписывать...! Голова кругом идёт... Если не кубом...
ЦитатаPeter ()
Придумать-то его придумали, да только новые проблемы полезли.
Да уж.
Цитатаmishem ()
Вот здесь все доходчиво написано.
Ага, попадалась эта статья.
Peter, актуальная проблема с перекодировкой символов алфавита mishem'ом решена, а учитывая, сколько работы предстоит по восстановлению исходника, я свою просьбу снимаю с повестки. В контексте утраты исходника плагина, мне она больше не кажется хорошей идеей Бесплатный онлайн курс программирования в VisualNEO Win (NeoBook)
офигеть. Это же сколько работы - заново всё переписывать..
Гм... А вот интересно: по какому принципу оценивают необукеры сложность создания плагина? По количеству команд?
Ну, с одной стороны поглядеть - это верно, т.к. каждая команда требует "обвязки", хотя бы чисто технически. НО, как и не раз говорил, за одной командой может скрываться совершенно разное количество кода плагина. Помню, какой фурор произвела одна команда плагина гарика по "прозрачности окон", а в реальности... Всего ОДНА(!) стандартная функция WinAPI, в которую и надо-то только подставить дескриптор окна и цвет прозрачности. А восторг-то был....
Это абсолютно то же самое как в сабже темы команда по анимации окон, просто мне в голову не пришло впихнуть в плагин "до кучи" эту хрень с прозрачностью, а самому было не надо.
А что касаемо "сложности", то, например, в том же zmVLC кода (и работы) в сотни раз больше, чем в том, что лежит в шапке этой темы, а команд (если не ошибаюсь) меньше. Так ЧТО сложнее?
Если честно, проблема тут не в сложности (этот плагин мне сейчас привести в порядок надо один-два вечера), а просто в том, что, увы... неинтересно. Я уж как-то говорил все это... Ну, вот хоть расстреляйте!
Понашлепать плагинов не проблема. Парадокс в том, что то, над чем я готов реально попотеть не нужно никому, и наоборот! Нужен вам другой плагинотворитель, например, у которого мозги на интернете съехали. Если попадется действительно грамотный (в Delphi или в С++) и заинтересованный чувак, то над всеми этими HTML и JS только ржать и ржать будете!
В общем, поживем - увидим... Может и появится "вдохновение" когда-нибудь... ... довести до ума это чудо в перьях, а не на "интернете" свихнуться!
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
то, над чем я готов реально попотеть не нужно никому
Думаю, что если нужно хоть одному, то нужно и тысячам. Мне тут одну историю примечательную на днях рассказали, мне она очень понравилась. Один мужик из Тюмени решил делать прочные и не травмоопасные мечи для детей и любителей соответствующих игр и видов спорта (просто он для своих детей сделал сначала, поскольку покупные мечи быстро сломались, а получилось хорошо). Когда он понял, что получилась хорошая вещь, то начал предлагать их в Тюмени, но не смотря на большое количество любителей фехтования, разных клубов "ролевиков", "толкиенистов" и т.д., заказов по Тюмени ровно ноль (хотя город у нас не маленький). Тогда он решил попробовать предложить в интернете. Теперь у него сотни тысяч заказов из разных регионов. Но! По Тюмени по прежнему ноль! Очень примечательная история. Это я к тому, что если ты с вдохновением что-то делаешь, и видишь в этом смысл, то наверняка есть люди, которым это нужно. Они просто ещё не знают о том, что ты можешь предложить.
ЦитатаPeter ()
По количеству команд?
Для меня создание любого плагина представляется как большая и квалифицированная работа. И не зная кухни этого процесса я могу лишь гадать какую команду автору сделать относительно легко, а какую очень затратно по времени и вообще много чего знать надо. Поэтому объем работ представляю очень смутно и в основном, конечно, по числу команд в плагине. Твой комбайн явно не из простых. И, мне кажется, двумя вечерами тут даже тебе не обойтись.
Просто у вас, в Тюмени, это никому не нужно. Вадим, ранее делая то, что называется "плагин", я умышленно вставлял некоторые баги и давал тестить... Результат?... Никто ни разу не указал на баг. НИ РАЗУ!!!
Комментарии нужны?... Это - прекраснейший показатель "нужности" сделанного.
ЦитатаВадим ()
Для меня создание любого плагина представляется как большая и квалифицированная работа.
Гм.. А вот это с какой стороны посмотреть. Скопипастить готовый чужой код в готовую "болванку" из SDK, и нажать кнопку "Compile" может, пардон, любой дурак! Чуток же поднаторев в искусстве "копи-пасте", можно и "чудеса" творить. Примеры уже имеются.
А вот сделать что-то действительно стОящее нужны и знания и опыт и время.
ЦитатаВадим ()
Твой комбайн явно не из простых
ПРИМИТИВ!!! Убогий примитив, да и еще с огромной кучей "говнокода". Уж мне ли не знать?
Но, это простительно, т.к. тогда я едва-едва начал изучать Delphi.
Ведь не даром сказал:
ЦитатаPeter ()
в том же zmVLC кода (и работы) в сотни раз больше
И код в сотни раз умнее и "взрослее". Но, вот только это никому не надо, а дилетантский хлам идет "на ура!". Парадокс...
Вот видишь как много "скрыто внутрях". И можно сильно ошибаться в оценках.
Как бы резюмируя, настоятельно рекомендую: прежде, чем аплодировать "Ура новым плагинам!", хотя бы просто попробовать в работе "новинку".
P.S. Кстати, на офсайте (ресурсном центре) пересчитать реально хорошие плагины хватит пальцев одной руки.
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Ну, значит не там вставлял :). Ошибку мы просто не заметили или посчитали, что так и должно быть. То, что никто не указал на преднамеренный баг не означает, что плагином не пользуются вместе с багом :). Я постоянно пользуюсь zmFunctions и zmFTP (остальными реже: zmVLC, zmWMP, zmToRTF, zmStopgap, zmNet, zmKeyBoard, zmaNTPClient (с Антоном), а не задействованным в моих проектах остаются пока только zmTray (он совсем новый, я просто не успел им воспользоваться) и zmToneGenerator, хотя и для него у меня были идеи, в т.ч. сделать программу для настройки гитары), поэтому ставить знак равно между "нашли баг" и "пользуются" не стоит. Если нужна достоверная информация, то просто спроси людей - кто какие твои плагины реально использовал в своих проектах и какие чаще других.
Как бы ты не относился к самой реализации zmFunctions (тебе, как автору, в этом плане, виднее), но этот плагин содержит действительно полезные необукерам команды (в этом ты уже не можешь сомневаться), например по работе с окнами, кодировками, хэш-суммами, монитором мыши, монитором буфера обмена... По этой причине, я уверен, что им пользуются все русскоязычные необукеры (про иноязычных не знаю, но думаю пользуются тоже, хоть и не все).
Ну это я еще помню, хоть плагин для WMP всего-лишь набросок - там НИ ОДНА функция не доведена до ума, все сделано "на коленке", а VLC это на порядок (если не на один) серьезнее и сложнее будет, но...
А вот это я с большим трудом припоминаю - неужели я столько успел "нагадить"? Что за zmNet такой?...
Последний пункт вообще что-то явно не мое, ты уж там разберись что к чему.
ЦитатаВадим ()
этот плагин содержит действительно полезные необукерам команды
Да я допускаю что есть что-то полезное (мне и самому раньше это надо было, потому и плагин родился на свет, я его совершенно не собирался обнародовать, как-то случайно получилось)
ЦитатаВадим ()
ставить знак равно между "нашли баг" и "пользуются" не стоит.
Гм... Ну как сказать. VLC плагин вообще в скомпилированном(!) проекте будет напоминать о том, что он - тестовый, и не заметить это просто невозможно. Отсюда вывод - никто не компилит! Почти никто - Ксения хоть вопрос задала, а Антон "обошел" сообщение (его не так уж и сложно обойти, но куда проще задать вопрос или спросить нормальную версию, не правда ли?).
А насчет этого плагина я до конца не решил еще... может и переделаю... Просто там многое надо, фактически, делать с нуля...
А вообще, забавно получается - чем примитивнее плагин, тем он - нужнее, и наоборот!
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Бред какой-то! Я ничего никогда "в сотрудничестве" не делал, да и это чудо впервые вижу! Подождем - может мой "соавтор" чего-нибудь пояснит.
ЦитатаВадим ()
Кто знает, на что способен слегка выпивший программист? Раз, и случайно плагин появился на свет...
Так то "программист", а я-то тут причем?
ЦитатаВадим ()
Может, всё-таки, были?
Да я как-то не особо увлекаюсь... Кстати, например, на новогодние праздники у меня были специально подготовлены 8 бутылок водки, и одна - коньяку. И что ты думаешь... За все праздники была выпита бутылка шампанского (как и положено), грамм 150-200 водки, и 3 банки пива! А ты еще сумневаешься...
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Вадим, будь ласков, пришли мне это чудо - хоть посмотреть в чем, якобы, я "сотрудничал".
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Гм... да.... Нацарапал пару каких-то строк.. и попал...
Кстати, заметил там в своем коде некоторую неточность, но не критично, насколько я понимаю - работает.
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться