Добро пожаловать к нам в гости! Наш сайт посвящён программе 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, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Дата: Чт, 21 Октября 2010, 15:30 | Сообщение # 451
Эксперт форума
Модераторы
Сообщений: 5942
Offline
Забирай свои игрушки... В подпрограммах последние строчки. Думаю разберешься.
Добавлено (21 Октябрь 2010, 15:27) --------------------------------------------- Что то я у тебя тут некоторые вещи не понял If "[mX]" ">" "[chX]" Math "[chX]" "" "[mX]" EndIf
Math "[chX]" "" "[mX]" Это чей то за уравнение такое?
Добавлено (21 Октябрь 2010, 15:30) --------------------------------------------- Не, ну так не интнересно одному общаться.
Дата: Чт, 21 Октября 2010, 16:37 | Сообщение # 452
Необукер
Проверенные
Сообщений: 4238
Offline
Quote (mishem)
Что то я у тебя тут некоторые вещи не понял
а ты их закоментируй и вызывай меню с разных позиций
Quote (mishem)
Math "[chX]" "" "[mX]" Это чей то за уравнение такое?
древне-греческая формула, кстати по ней Архимед докторскую защитил
Добавлено (21 Октябрь 2010, 16:37) ---------------------------------------------
Quote (mishem)
В подпрограммах последние строчки. Думаю разберешься
да это не то, такое я уже пробовал, мне ведь надо запустить три разных подпрограмм, а не одно действие Короче, чтоб тебе было понятно, вот замени свой код на этот:
Дата: Чт, 21 Октября 2010, 17:18 | Сообщение # 456
Админ NeoBook
Администраторы
Сообщений: 7425
Offline
Quote (mishem)
этот глюк был, я думал Петр убрал его. Я от него тогда избавился поставив локальный монитор мыши. Но петр после , спустя время, кому то ответил что нужно ставить глобальный(была другая какая то проблема),
Глюк действительно был убран (возникал при обращении к главному меню), и, если не ошибаюсь, я всегда говорил о том, что предпочтительнее использовать именно локальный монитор, а не глобальный (естесственнно, за исключением случаев, когда без глобального никак). Что касаемо данного случая, то, если честно, разбираться в скриптовых дебрях двух выложенных примеров, нет никакого желания, ни возможности сейчас. Потому просьба: сделать максимально простейший пример того, что требуется, и что именно не работает. - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Дата: Чт, 21 Октября 2010, 17:42 | Сообщение # 457
Эксперт форума
Модераторы
Сообщений: 5942
Offline
Quote (Peter)
Глюк действительно был убран
Сдесь не глюк. Ему выспаться нужно. Плаг отлично работает. Сергей, Ты че мне голову морочишь? Забирай назад... Работает через раз, но клик риг твой пополнился. Дальше думаю найдешь. Или жди когда высплюсь. Весь код переписывай. А то он уравнения Архимедовы создает.
Добавлено (21 Октябрь 2010, 17:35) --------------------------------------------- Peter, если он сделает простой пример, сам разбирется. Делать не хотел, лентяй. Как я его?
Добавлено (21 Октябрь 2010, 17:42) --------------------------------------------- Сергей, последние две подпрограммы замени на это
Дата: Чт, 21 Октября 2010, 17:43 | Сообщение # 458
Необукер
Проверенные
Сообщений: 4238
Offline
Quote (Peter)
сделать максимально простейший пример
самый простеший это, то, что уже выложен. Попробую в кратце объяснить: Надо имитировать контекстное меню (которое создется Menu или MenuЕх) заметь, что оригинальное-меню исчезает независимо, от того, кликнул по пункту или нет. Вот и я, чтоб повторить это-использую моус монитор, но в отличие от оригинала, не обрабатывается код находящийся в пунктах под-меню(они у меня ввиде обычных кнопок) Ну вот в кратце
Дата: Чт, 21 Октября 2010, 17:51 | Сообщение # 459
Эксперт форума
Модераторы
Сообщений: 5942
Offline
Сергей, Ты че, мои посты игнорируешь.?
Добавлено (21 Октябрь 2010, 17:51) --------------------------------------------- Сергей, Ну загляни ты в мой проект который выкладывал. Там все это реализовано. Я ж тебе сразу описал что нужно сделать. Нужно в кнопках прописывать включение и отключение монитора. Как оно у тебя закроется не зависимо от того кликнул ты по кнопке или в стороне от меню? В стороне не закроется, монитор то отключин. Когда мыш уходит с меню, монитор опять должен включится. И там определить надо координаты окна и координаты мыши. Если мышь вне окна, то окно закрыть. Фух.
Дата: Чт, 21 Октября 2010, 17:51 | Сообщение # 460
Админ NeoBook
Администраторы
Сообщений: 7425
Offline
Все понял в чем дело: это не глюк плагина, а глюк, пардон, программера. Монитор мыши будет срабатывать всегда, когда происходит событие мыши, а ведь мышь имеет несколько событий, и в частности - левый нажим, левое отпускание, правый нажим, правое отпускание... В подпрограмме для монитора мыши не прописано на какое собитие реагировать и потому подпограмма срабатывает на первое событие, т.е. на нажим мыши, а код кнопки - на отпускание мыши. Что наступает раньше?
Подпрограмма монитора закрывает окно "подменю" на нажатие мыши, и потому код кнопки (на отпускание) в подменю не срабатывает, т.к. кнопки-то уже нет. - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Дата: Чт, 21 Октября 2010, 18:03 | Сообщение # 461
Необукер
Проверенные
Сообщений: 4238
Offline
Quote (mishem)
И фсе! Все заработало
представляешь, папка весит 4 Гб. и если выбрать "очистить папку" то менюшка будет торчать до тех пор, пока не выпонится удаление Ладно, что нить придумаю
Добавлено (21 Октябрь 2010, 17:55) ---------------------------------------------
Quote (Peter)
Подпрограмма монитора закрывает окно "подменю" на нажатие мыши, и потому код кнопки (на отпускание) в подменю не срабатывает, т.к. кнопки-то уже нет.
Так это понятно
Quote (Сергей)
где я удаляю монитор, скрываю саму менюшку и поидее должен обработать код в кнопке, но есно он невыполняется так, как кнопки нет -как быть?
потому и спрашиваю, как обойти
Добавлено (21 Октябрь 2010, 17:56) --------------------------------------------- но мне все клики нужны, т.к. и ПКМ и ЛКМ должен обрабатыватся на скрытие....
Добавлено (21 Октябрь 2010, 18:02) --------------------------------------------- mishem, ты с кнопок что в под меню, убери с Моус-Ентер убери код SetVar "[clickRig]" "ХХХХ" и проверь Там записи остались от старых эксперементов, пардрн забыл удалить
Добавлено (21 Октябрь 2010, 18:03) --------------------------------------------- Давайте, я завтра выложу пример, без лишних вещей, лады?! устал я что то
Сообщение отредактировано Сергей - Чт, 21 Октября 2010, 18:03
Еще проще. Последние две подпрограммы можешь удалить вообще. А на маус ентер маус экст вешай отключить включить монитор. На щелчек левой мыши, вешай CloseCustomWindow "menuRight" Вот теперь Фсе.
Дата: Чт, 21 Октября 2010, 18:07 | Сообщение # 463
Админ NeoBook
Администраторы
Сообщений: 7425
Offline
Quote (Сергей)
но мне все клики нужны, т.к. и ПКМ и ЛКМ должен обрабатыватся на скрытие....
Эти события определяются по состоянию перемнных монитора мыши. В дэмке к плагину ВСЕ ЕСТЬ! И даже есть в том "подобии справки", которое приложено к подобию плагина.
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Дата: Чт, 21 Октября 2010, 18:14 | Сообщение # 465
Админ NeoBook
Администраторы
Сообщений: 7425
Offline
Quote (mishem)
Тогда в кнопке так CloseCustomWindow "menuRight" А в подпрограмме .:menuRight_OnClose SetVar "[clickRig]" "subMenu1" AlertBox "[PubTitle]" "[clickRig]" return
Имейте ввиду, что окно не закроется до тех пор пока не выполнится подпрорамма OnClose... - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Дата: Чт, 21 Октября 2010, 18:19 | Сообщение # 466
Эксперт форума
Модераторы
Сообщений: 5942
Offline
Quote (Peter)
что окно не закроется до тех пор пока не выполнится подпрорамма OnClose
Ну и не одна команда не продолжит выполнение пока не удаляться 4 гига. Тогда ход конем. Еще одно всплывающее окно, которое перекрывает меню и в котором отображается ход выполнения удаления. Тогда ни к чему и подпрограмму писать. Не хочешь читать хелп?
Дата: Чт, 21 Октября 2010, 18:27 | Сообщение # 467
Админ NeoBook
Администраторы
Сообщений: 7425
Offline
Quote (mishem)
пока не удаляться 4 гига.
Ну нн хрена себе вы папочки удалять!
Даже сама винда и та это быстро не сделает! А что, на время удаления папки предполагается какими-то другими делами заниматься? И что это за прога такая, которая регулярно удаляет по 4 гектара? Интересно...
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Дата: Чт, 21 Октября 2010, 19:28 | Сообщение # 469
Админ NeoBook
Администраторы
Сообщений: 7425
Offline
Quote (mishem)
А ты че, пропустил?
Да нет (каламбур)!
Просто последнее упоминание о 4-х Гб было "ближе", так-сказать... Интересно ЧТО это за прога такая? А почему 4? Почему не 20?... 200... пару терабайт... Нажал кнопочку, и... спатеньки...
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Дата: Пт, 22 Октября 2010, 10:12 | Сообщение # 471
Необукер
Проверенные
Сообщений: 4238
Offline
Quote (Peter)
Интересно...
это привел пример, но не лишено смысла. К тебе ведь частенько приносят системы, где темповские папки не очищались со дня установки винды... Там размеры могут разные быть и 500мб. и 4гб. Мне поподался комп, где темп весил 6гигов. Я хочу сделать типа прога по автоматизации стандартных процедур. То, что я делаю каждый день. В принципе он есть, но в самостоятельных проектах, я решил объеденить и немного переделать.
Вот сделал упрощеный пример вызова суб-меню
пока, что я нашел один способ(в примере он закоментирован), но иногда он себя странно ведет
Дата: Пн, 25 Октября 2010, 04:46 | Сообщение # 474
Админ NeoBook
Администраторы
Сообщений: 7425
Offline
Работа над плагином возобновлена. Пока без дополнений, только изменения: полностью переработаны диалоги выбора цвета и шрифта. Теперь можно задавать начальные значения цвета и шрифта в диалоговых окнах, а также положенние диалогов на экране. Цвет теперь полностью совместим с цветовой кодировкой (цветовыми константами) NeoBook. Подробности см. подобие файла справки и в дэмке. Также исправлены замеченные ошибки.
Код пока "не вылезан", потому убедительная просьба потестить на работоспособность все "нововведения".
P.S. Возможно завтра (уже сегодня ) будет продолжение...
Добавлено (25 Октябрь 2010, 04:46) --------------------------------------------- Сорри, с "продолжением" не очень получилось (пришлось в воскресенье работать, блин), но все же... В плагин добавились две команды: zmGetDesktopRectangle - получение параметров области экрана, не занятой панелью задач, zmGetExeNameByHandle - получение полного пути к файлу приложения по дескриптору окна. Подробности в дэмке (страничка "Окна") и в "справке"
Также, в команду zmConvertString добавилась опция конвертации строки в набор её ASCII-символов и обратно (NeoBook <-> #78#101#111#66#111#111#107).
Обновленный архив, по-прежнему, в первом сообщении темы
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Дата: Пн, 25 Октября 2010, 04:50 | Сообщение # 475
Наш дизайнер
Администраторы
Сообщений: 5959
Offline
Quote (Peter)
zmConvertString
вот это респект, а можешь заодно добавить сравнение по байтам чтобы NeobOok <> neObooK
Добавлено (25 Октябрь 2010, 04:50) --------------------------------------------- хотя это в принципе одно и то же что и zmConvertString... только делать в проекте сравнение и вывод. вопрос снимается.
Дата: Пн, 25 Октября 2010, 05:05 | Сообщение # 477
Админ NeoBook
Администраторы
Сообщений: 7425
Offline
Quote (Сергей)
стоит защита от дурака затестил так zmGetDesktopRectangle "left" "top" "wg" "hg" результат был показан
Ничего не понял... - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Дата: Пн, 25 Октября 2010, 05:17 | Сообщение # 479
Админ NeoBook
Администраторы
Сообщений: 7425
Offline
Quote (Сергей)
без скобок и показал результат
Пардон, это я накосячил, сейчас поправлю: должен показывать правильно и "без скобок".
Добавлено (25 Октябрь 2010, 05:17) --------------------------------------------- А может оставить так как есть? Пусть будет "защитой от дурака"!
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться