Кнопка реагирует на движение мыши или как поймать координаты курсора

Программирование - Работа с интерфейсом

движение мыши отловить движение курсора нажатие кнопки мыши на форме

12
Это не шутка и не розыгрыш !
КНОПКА реагирует на движение мышки, при приближении перемещается в свободное место на форме.
Это реальная обработка с открытым кодом, которая демонстрирует возможность только встроенными средствами 1С отлавливать все действия мыши и нажатие кнопок.
Поймай меня, если сможешь.

 

Шутка старая. Баян не мой. Но сегодня со мной ОЧеНЬ СИЛЬНО спорили , что такое нельзя реализовать без внешних компонент.

Без внешних компонент - лично я имею ввиду, что нет встроенных и подключаемых библиотек (встроенных макетов в обработке нет)

Но у кого нет MS OFFICE на компьютере - может "не взлететь". Почему? Догадайтесь сами - вы же программист.

Оценивайте, комментриуйте. Все гениальное - просто, как мир (с) Ваш Tatitutu

12

Скачать файлы

Наименование Файл Версия Размер
Escapingbutton.epf
.epf 44,65Kb
06.06.15
54
.epf 1.0.01 44,65Kb 54 Скачать

См. также

Комментарии
Избранное Подписка Сортировка: Древо
1. eugeniezheludkov 33 31.03.15 01:40 Сейчас в теме
т.е по вашему ActiveX компонента это "встроенные средства" и никак не внешние? ) а еще эта обработка не будет работать на Linux, а на Windows XP к примеру ActiveX Radiobutton работает по иному и все это нужно учитывать в коде, я в 2012 хотел огромный бизнес процесс "замутить"/реализовать на "стандартных" ActiveX компонентах и оно даже взлетело на 7, но когда выяснилось что у половины пользователей стоит XP (9000 пользователей) и все это перестало работать, пришлось переделывать заново...ИМХО: мне кажется вы проиграли оппоненту.
borrman; EmpireSer; sikuda; amon_ra; ojiojiowka; CrazyCD; kraynev-navi; +7 Ответить
2. Tatitutu 3682 31.03.15 03:44 Сейчас в теме
(1) Спасибо за позитивный отзыв.
Отличное чувство юмора.
А как бы сделал ты ?

Завтра (1 апреля) береги спину от мела))))
Улыбнись, выдыхай и иногда отдыхай.
Tatitutu - никогда не проигрывает априори. (С)
3. kraynev-navi 377 31.03.15 08:47 Сейчас в теме
Тогда уж проще в html-поле засунуть javascript, который исполнит этот функционал. И со совместимостью будет получше. Хотя это "такие же" встроенные средства как вам и объяснили в (1).
EmpireSer; sikuda; +2 Ответить
5. Tatitutu 3682 31.03.15 09:52 Сейчас в теме
(3) Этим и прекрасна 1С - что практически любую задачу можно решить различными способами.
Один будет оптимальный,другой быстрый , третий оригинальный, четвертый - жалкой попыткой.
Ты еще предложи приложение на смартфон скачать. Если можешь написать - пиши, делись, будем посмотреть.

Но, еще раз обращаю ваше внимание - это не НОМИНАЦИЯ на Нобелевскую премию.
Это хороший пример с ОТКРЫТЫМ КОДОМ
- как отловить нажатие клавиш мыши (промахнитесь по кнопке и кликнетите по форме)
- нетриваильная работа с КАРТИНКОЙ
- пример создания программно объекта на форме
- псевдозаблуждение в коде )))
- и кучка маленьких секретов
ну и самое главное - это конечно же ЮМОР и ПОЗИТИВ данной обработки

Дословно вопрос стоял так : "Хочу сделать убегающую кнопку на форме для бухглатера (достала)" можно ли такое организовать ?"
около 50 уважаемых мною людей - категорично ответили "НЕТ".
Что в 1С на форме нельзя получить координаты мыши, что нужно подключать различные БИБЛИОТЕКИ ( *.dll)

Я сказал , что можно "Засекайте время" 10 строчек кода + бантики = около 15 минут.
Цель : показать возможность и расширить навыки программирования.
Применение : указано в теме заголовка 1 АПРЕЛЯ - розыграть коллегу бухгалтера, поднять настроение.
Я думаю удалось на все 100% - оригинально, без лишних затрах. Думаю для многих будет интересно и полезно.
В голове уже есть пример двух игрушек - будет время обязательно реализую.

(4) Не поверишь и рядом не стояли. Шутка ложь- да в ней намек (с)
7. Жолтокнижниг 245 31.03.15 14:04 Сейчас в теме
(5)
Этим и прекрасна 1С - что практически любую задачу можно решить различными способами

А вы другие языки пробовали? Звучит немного смешно.
8. Tatitutu 3682 31.03.15 15:00 Сейчас в теме
(7) Жолтокнижниг,

Мне одному кажется , что у этого сайта основное направление 1С
Ну если тебе смешно, это уже хорошо - значит не все потеряно )))
4. ИНТЕГРА 22 31.03.15 09:02 Сейчас в теме
6. fishca 1126 31.03.15 13:59 Сейчас в теме
Понравилось! Спасибо!
Tatitutu; +1 Ответить
9. Tatitutu 3682 01.04.15 10:05 Сейчас в теме
C 1 апреля всех и вся ! Налетай !
10. sick_russian 02.04.15 10:29 Сейчас в теме
у меня не сработала.. кнопка тупо зависла на середине формы.. а по клику реклама какой то разработки для магазина))
Дмитрий74Чел; +1 Ответить
11. Tatitutu 3682 02.04.15 10:40 Сейчас в теме
(10) sick_russian,
Какая платформа ? Конфигурация ?
Microsoft Office установлен на компьюторе ?
Так как используется объект Microsoft Forms 2.0 Frame
он то и позволяет "отлавливать" все действия и движения мыши на форме.

(и не какой-то , а самой лучшей! (с) право автора)
12. Дмитрий74Чел 18 10.04.15 16:22 Сейчас в теме
(11) в описание добавьте - а то розыгрыш не удался(((
15. Tatitutu 3682 14.04.15 21:13 Сейчас в теме
(12) Дмитрий74Чел,

Удался ! Еще как удался - и это не розыгрыш и не обман
Это конкретное решение поставленной задачи и 6 бутылок коньяка.
И я их честно выиграл в споре.
Удачи все и ваших начинаниях.
Вчера хотел выложить НОВУЮ КРЕАТИВНУЮ ИДЕЮ - как сжимать КАРТИНКИ в офисе
без ВНЕШНИХ КОМПОНЕНТ без АКТИВ Х без всего - один маленький прием и вы в дамках.
Теперь думаю , а зачем ?
Все серьезные и злые - неужели так жизнь достала ?
Вот тут раньше времена были - сайт аж тресся так,что провайдет думал - это блохи.
За один день можно было стать и ХАРД МОДЕРАТОРОМ и три раза быть забаненным.

Господа ! Если ВЫ ВСЕ ТАКИЕ УМНЫЕ - предложите АЛЬТЕРНАТИВНЫЙ ВАРИАНТ данной постановки задачи !
16. sikuda 527 17.04.15 13:07 Сейчас в теме
(15) без ВНЕШНИХ КОМПОНЕНТ без АКТИВ Х без всего
с тебя одна бутылка. Пример кода даже на УФ.

&НаКлиенте
Процедура ПриОткрытии(Отказ)
ПодключитьОбработчикОжидания("Отсчет", 0.1, Истина);
КонецПроцедуры

&НаКлиенте
Процедура Отсчет()
Элементы.Up.Высота = ТекущаяУниверсальнаяДатаВМиллисекундах() % 20;
Элементы.Left.Ширина = ТекущаяУниверсальнаяДатаВМиллисекундах() % 40;
ПодключитьОбработчикОжидания("Отсчет", 0.1, Истина);
КонецПроцедуры

&НаКлиенте
Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка)
ОтключитьОбработчикОжидания("Отсчет");
КонецПроцедуры

&НаКлиенте
Процедура СделатьВсе(Команда)
Сообщить("Молодец! Возьми пирожок, понюхай его и положи на место.");
КонецПроцедуры

Так, что про сжатие катринок не томи. JPEG это сжатый уже формат, как правило с потерей качества. Как ты предлагаешь еще качество понизить?
Прикрепленные файлы:
БегающаяКнопка.epf
Tatitutu; +1 Ответить
17. Tatitutu 3682 21.04.15 14:07 Сейчас в теме
(16) sikuda,

За идею - спасибо, молодец.
Но у меня - кнопка реагирует на ПРИБЛЕЖЕНИЕ курсора мышка.
Изюминка мой идеи : это как раз и отлавливание координат мышки и ее действий
в простом состоянии она неподвижна.
В твоем же предложение - она "бегает" как больная ))))
Так что , бутылку я не проспорил, но с удовольствием бы выпил ее вместе.

Про картинки помню, спасибо. До конца недели постараюсь отписаться.
Styvi; sikuda; +2 Ответить
13. bulpi 136 13.04.15 12:49 Сейчас в теме
Юмор - это хорошо, товарищи. Но "только встроенными средствами 1С" - это не юмор, а обман.
14. Tatitutu 3682 14.04.15 21:08 Сейчас в теме
(13) bulpi, И в чем обман ?

Ребята, господа, коллеги , друзья , товарищи - где вы все ? Что с вами случилось ?
Неужели это не элегантное решение - не ужели вы не подчеркнули для себя ,что то нового ?
Только и гундешь - обман, обман, меня развелииииииииииииииииии.

А это НЕ "только встроенными средствами 1С" ?
Оставьте свое сообщение