Добро пожаловать к нам в гости! Наш сайт посвящён программе 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, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Peter, Глобальный монитор мыши. При кликанье левой кнопкой по заголовку окна. Любого. Происходит некая задержка. Правый клик мыщи "zmRBD нажатие и удержание правой кнопки мыши" срабатывает при двойном клике мыши. При нажатии и удержании нет.
Да, я в курсе (и этой задержке есть объяснение), но пока это исправить невозможно. Если буду полностью переделывать "мышку", то...
Quote (mishem)
срабатывает при двойном клике мыши.
События "двойной щелчок" у монитора нет совсем, а срабатывать ВСЕГДА будут последовательно сначала "нажатие", а затем "отпускание" кнопки мыши. - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Команду CloseCustomWindow пока никто не отменял, вроде.
И куда ее воткнуть? Дело в том, что окно должно быть открыто пока мышь находится в его пределах.Если за пределами произошел клик, тогда должно закрыться.В принципе сейчас попробую поизврощаться.
Quote (Peter)
События "двойной щелчок" у монитора нет совсем
Плохо. Нужен.
Quote (Peter)
срабатывать ВСЕГДА будут последовательно сначала "нажатие", а затем "отпускание" кнопки мыши.
Так в том то и дело, что у правой кнопки нажатие не срабатывает. Только при дубль клике правой показывает zmRBD. Не хочешь читать хелп?
Дело в том, что окно должно быть открыто пока мышь находится в его пределах.Если за пределами произошел клик, тогда должно закрыться.
Ну, другого пользоваельского способа управления, как обрабатывать события мыши или клавиатуры, в Windows пока ещё не придумано!
Quote (mishem)
Плохо. Нужен.
Нет, не нужен! А если нужен, то его можно "организовать" и средствами самой NeoBook.
Quote (mishem)
Так в том то и дело, что у правой кнопки нажатие не срабатывает. Только при дубль клике правой показывает zmRBD.
Одно слово - фантастика! У меня все работает как положено, и не только в дэмке. Скрипт в студию! - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Похоже я тебя в заблуждение ввел. Я по отладчику смотрел, там не отображается. Но на самом деле срабатывает.
Quote (Peter)
Нет, не нужен! А если нужен, то его можно "организовать" и средствами самой NeoBook
Не, ну если будешь полностью переделывать. Смысл организовывать, если плагин уже задействован. Даже в примере выше, кнопку "закрыть" убрал, скрылась и свернуть, развернуть. И возможность развернуть окно щелкнув по заголовку , пропала Не хочешь читать хелп?
вот такая ошибочка вылетает, когда назначаю подпрограмму
Блин, в который раз! Эта ошибка меня уже достала - постоянно путаю ComboBox-ы на форме! Это - фигня, поправим... Хуже то, что при переустановке системы (накануне) посеял я некоторые модули плагина. И не только...
Придеться теперь их писАть заново. Эх, нет в жизни щасья!
Добавлено (28 Март 2010, 07:30) ---------------------------------------------
Quote (mishem)
кнопку "закрыть" убрал, скрылась и свернуть, развернуть. И возможность развернуть окно щелкнув по заголовку , пропала
Я в этом не виноват! Честное пионерское!
Все претензии - к разработчикам NB!
Но, теоретически, можно и поменять кое-что в оконных стилях...
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
В данном случае, проблему можно решить иначе, но для этого системная кнопка "развернуть окно" должна присутствовать в заголовке. - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Peter, Ну это нельзя назвать проблемой. И не такая это важная вещь для такого окна, но все же. Меня больше интересует дубль клик для такого объекта как Rectangle.И не только дубль. И в основном для тех объектов для которых он служит подложкой. В моем случае база данных. Запустить скрипт через один клик, нет смысла, так как что бы ее активировать, по любому по ней надо щелкнуть. А для того что бы открыть какое либо окно с теми данными которые активированы, как раз нужен дубль. Для этого же объекта меня когда то интерисовал правый клик. Сейчас, спасибо тебе огромное, многие вопросы решились.
Добавлено (29 Март 2010, 20:12) --------------------------------------------- Peter, огромная просьба подчистить эту ветку, пожалуйста. А то столько страниц пересмотреть, сил не хватает. Не осилил, по этому задаю вопрос в надежде что его не было. Дочернее окно, сделано штатными средствами на лад меню. Запушен монитор мыши. В мониторе есть подпрограмма в которой две строчки, закрыть это окно и удалить монитор мыши. Сделано для того, что б окно закрывалось от щелчка, если не выбрана ни какая функция. При щелчке по пункту меню (в окне), окно закрывается, монитор отключается, но код который пропИсан в пункте, не выполняется.
Честно говоря, я не сумел точно воспроизвести ситуацию.
Quote (mishem)
Дочернее окно, сделано штатными средствами на лад меню
Что такое "лад меню"?
Quote (mishem)
При щелчке по пункту меню (в окне), окно закрывается, монитор отключается, но код который пропИсан в пункте, не выполняется.
По какому пункту меню, и в каком окне?
Если можно, скрипт, пожалуйста!
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Правой кнопкой щелкни, это меню всплывающее меню, видно не правильно выразился. Но вызвано не Menu или MenuEx, а сделано из объекта с кнопками и вызывается командой CustomWindow.
Quote (Peter)
По какому пункту меню, и в каком окне?
По кнопке в окне вызваном командой CustomWindow. При щелчке по кнопке должен запустится скрипт (любой). В подпрограмме для монитора мыщи, закрыть это окно "CloseCustomWindow" и удалить монитор мыщи "zmDelMouseMonitor", какой именно клик, не указан
Да, монитор выставил глобальный. Выполняется только подпрограмма. Выход из этого положения нашел такой, когда мышь находится на кнопке, монитор удаляется, когда с кнопки убирается, занова запускается. Но. Так и должно быть? Если щелкать просто по кнопкам которые есть на странице, все работает нормально. При вызове окна, засада. Не хочешь читать хелп?
В подпрограмме для монитора мыщи, закрыть это окно "CloseCustomWindow" и удалить монитор мыщи "zmDelMouseMonitor", какой именно клик, не указан
У меня вообще глобальное зависание наблюдается! Чего-то где-то я напорол...
В общем, вижу ещё раз, что все переделывать в "мониторе" придеться! Потерпи немного, я постарюсь разобраться...
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
zmTraylcon - Создать в системном лотке значок приложения. Установил эту команду при запуске приложения без всяких подпрограмм.
Code
zmTrayIcon "" "" "" ""
При закрытии приложения
Code
zmDeleteTrayIcon
ставить не стал. Счел что иконка должна удаляться автоматически при закрытии программы. Но, после компиляции проекта стала выскакивать ошибка "обнаружена ошибка. Приложение будет закрыто. Приносим извинения за неудобства." и т.д. Удалил команду zmTraylcon, ошибка пропала. На 100% не уверен, но пока больше не выскакивает. Получается надо обязательно устанавливать zmDeleteTrayIcon на выходе? Не хочешь читать хелп?
Установил эту команду при запуске приложения без всяких подпрограмм. Code zmTrayIcon "" "" "" ""
Честно говоря, мне чрезвычайно сложно постигнуть смысл создания значка в трее без каких-либо опций. Просто ради "голого" значка? Ох уж эта пытливая пользовательская фантазия!
Тем-не-менее, я провел такой же "экскримент" (XP_SP3), и обнаружилось наличие отсутствия ошибки.
Quote (mishem)
Счел что иконка должна удаляться автоматически при закрытии программы.
Совершенно справедливо - иконка автоматически удаляется при закрытии приложения, и специально удалять её не требуется. Однако, уж коли ошибка объявилась, было бы весьма любопытно провести ещё один "экскримент" (на наличие присутствия ошибки), но уже с ручным удалением (zmDeleteTrayIcon) значка. - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Честно говоря, мне чрезвычайно сложно постигнуть смысл создания значка в трее без каких-либо опций
Честно говоря, я создал и забыл. Вернее не совсем забыл, а отложил на потом. А тут программа понадобилась уже. Компильнул, отсюда и обнаружил. Но... Ошибка продолжает выскакивать. Значит не в этом проблема. Вчера перестала, сейчас попробовал, опять. Peter, когда выскакивает ошибка, создается отчет. По нему можно узнать в каку сторону капАть?
Добавлено (02 Апрель 2010, 10:23) --------------------------------------------- Самое главное, выскакивает только после закрытия приложения, и то, через некоторое время, не сразу. Может выскачить минуты через 2-3.
Добавлено (02 Апрель 2010, 11:11) --------------------------------------------- Ниче не поюму. Опять перестала выскакивать Правда все на скорую руку. Времени в обрез. Спешу. Попробу вечером еще.
Quote (Peter)
но уже с ручным удалением (zmDeleteTrayIcon) значка
И с ручным, и без ручного. Пока пропала. У меня как всегда, мистика!!! Не хочешь читать хелп?
Самое главное, выскакивает только после закрытия приложения, и то, через некоторое время, не сразу. Может выскачить минуты через 2-3
а ты только один плагин используешь? Мне поподался такой плагин(сам автор плага писал, что надо выгружать плаг, чтоб небыло ошибок), так вот, я поначалу тоже не выгружал плаг и у меня постоянно вываливалась ошибка, может оно.
Тем-не-менее, я провел такой же "экскримент" (XP_SP3), и обнаружилось наличие отсутствия ошибки.
аналогично, и причем эту команду я использовал самую первую и с тех пор ни разу небыло ошибок. не реклама mishem, может это поможет:
1. Если включено Сообщение об ошибках Выключить сообщение об ошибках, но оставить уведомление о критических ошибках, мона так: Пуск-панель управления-Производительность и обслуживание- система- дополнительно- отчёт об ошибках- отключить отчёт об ошибках. 2. Почистить комп(реестр) например этим TuneUp Utilities(если что в лс)
Сообщение отредактировано Сергей - Сб, 03 Апреля 2010, 09:24
Все отлично работает когда нет открытых окон в винде.Баллон вылетает как надо. Но стоит открыть ту-же оперу, как баллон начинает вылетать на заднем плане и его не видно.Как сделать что бы он вылетал на передний план.Может перемудрил чего? подскажите плиз. добавил:
Code
ObjectToFront "Container4"
Осталось все так же. Забыл сказать, прога создается как SystemTray. Баллон выкидывает сидя в трее. упс...Оказывается сидя в трее баллон вообще не вылетает а только когда программа развернута.Если ткнуть по иконке то, появляется баллон и окно программы. В чем может быть дело?
Сообщение отредактировано SiBEERia - Ср, 07 Апреля 2010, 13:35
Peter, я поповоду плагина 1000 мелочей , я все по поводу реестра Ладно чтение запись стр.параметров есть в НБ, а можно сделать удаление записи и вывод списка?! 1 Пример(добавление\удаление): добавил я запись "C:\Program Files\myProgramm\myProgramm.exe" в ветку HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\myProgramm, а удалиь строку "myProgramm"="C:\Program Files\myProgramm\myProgramm.exe" неполучается 2 тот же пример: вывести все записи в ветке HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\
Сообщение отредактировано Сергей - Чт, 08 Апреля 2010, 11:14
спросил бы пораньше, у меня на компе остались заготовленные скриптовые функции для реестра - там и создание/чтение/удаление параметров любого типа, и перечисление ключей и параметров и другие извраты... а щас я не доберусь до своего компа еще долго
в общем, твои вопросы можно решить скриптами (поищи примеры в сетке, мож найдешь рабочие), либо Peter в плагин это может вдруг засунет, либо посмотри консольную команду Reg. Прямо сейчас ничем помочь я не могу Как задавать вопросы
Удалены неактуальные и бессмысленные комментарии. Peter может еще почистит на свое усмотрение. При возникновении вопросов не связанных с плагином напрямую - создавайте отдельные темы. При написании специальных сообщений (о найденных ошибках, о предложениях, ранее не обсуждавшихся конкретных вопросах по плагину) - выделяйте их цветным заголовком. При написании явного оффтопа используйте спойлер. Как задавать вопросы
Для удаления записи из Реестра существует NB-функция, Сейчас нет её у меня под рукой. Если найду, выложу. А вот с чтением целых веток Реестра... Насколько я знаю (может ошибаюсь) даже в дэлфях нет таких специальных функций. Правда, их можно сделать и самостоятельно, но это уже "отдельная тема". Сергей, попробуй вот этот, очень недурной плагин. может и отыщется то, что нужно (я точно не помню сейчас)полезное, т.к. в нем есть функции работы с Реестрм, и не только!
Quote (Сергей)
знаем "любовь" НБ к скриптам, все же плаг луч
Плагин всегда и по-любому будет лучше, но со скриптами больше "независимости", т.к. можно творить самостоятельно, а не ждать когда там какой-то дядя раскочегарится на плагин!
Найти бы время на изучение VBS.... - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Можите мне объяснить,мне кажится,что я нашел ошибку в zmFunctions: при использовании функции zmSetMouseMonitor "Local" "1" "True" zmSetMouseMonitor "Local" "1" "False" приложение виснит при нажатии на системное меню (верхнее и нижнее),в чём ошибка?
Ошибка (хотя это и не ошибка в чистом виде) была в плагине. Вот (в прикреплении)попробуйте исправленный вариант. Теперь виснуть не должно.
Весь монитор мыши (глобальный) будет переделан, а "локальный", если в существующем последнем варианте все же будет выдавать ошибки, тоже подвергнется полной ревизии.
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Комп геймерский? А чего же тогда ещё ждать-то! То ли ещё будет!
Но, все-равно, очень интересно - у меня нет никаких ошибок, ни при "Local", ни при "Global", ни при "True", ни при "False"...
Попробую глянуть ещё...
Кстати, про глобальный монитор (в том виде как есть сейчас) советую забыть совсем!
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Возможно дело ещё в упаковщике... Вот (в прикреплении) неупакованный вариан плагина. Попробуйте... - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Если устраивает, то почему бы нет... Но, в любом случае, плагин далек от совершенства даже в существующих уже опциях, и будет перерабатываться. - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться