|
1 / 1 / 0
Регистрация: 08.10.2018
Сообщений: 30
|
|||||||||||||||||||||
Счетчик нажатий кнопки и удаление файла после 10-ти нажатий25.11.2018, 00:06. Показов 7818. Ответов 52
Метки нет (Все метки)
Возникла такая проблема
В программе необходимо скачать видео и после 10-ти просмотров удалить. Причем у программы-приложения должно быть сохранение при закрытии/открытии и счет должен продолжаться с момента закрытия. Написал код: скачивает (распаковывает, если нужно), включает плеер, подсчитывает и сохраняет количество просмотров. Программа полностью работает, ошибок нет. Но при сохранении "Остался 1 просмотр", при следующем старте приложения происходит удаление файла видео (преждевременно) и просмотр последнего десятого раза не происходит. Не могу понять в чём я ошибся, прошу помощи опытных товарищей.
0
|
|||||||||||||||||||||
| 25.11.2018, 00:06 | |
|
Ответы с готовыми решениями:
52
Счетчик нажатий кнопки на ATMega8535 счетчик нажатий кнопки в форме Счетчик уникальных нажатий кнопки +1 |
|
1 / 1 / 0
Регистрация: 08.10.2018
Сообщений: 30
|
|
| 20.12.2018, 23:02 [ТС] | |
|
Не получается. Если не сохранять, то после 10-го просмотра (с 1-2 секундной задержкой) удаляет. если сохраняться на последнем сеансе, то при нажатии "смотреть" - файл удаляется и плеер висит. Как и на моём видео.
0
|
|
|
1534 / 541 / 127
Регистрация: 09.01.2018
Сообщений: 1,758
|
||||||
| 20.12.2018, 23:56 | ||||||
|
Так я же написал, что позже отвечу.
Так оно и есть. Ошибка в вашем коде в том что вы Запускаете сеанс Увеличиваете счетчик Проверяете его значение и если оно больше 10 - удаляете Т.е. если значение было 9 - плеер сначала откроется. потом вы увеличивает счетчик (он становится 10) и следом вы удаляете файл, таким образом не давая пользователю возможности досмотреть его последний раз. Вторая проблема в том что вы стразу выводите сообщение о количестве оставшихся просмотров. При этом если счетчик равен 10 - такого индекса в вашем массиве нет. Вообщем, попробуйте вот так:
Я считаю что нет. Вначале должна быть проверена возможность просмотра. И файлы, просмотр которых невозможен - вообще не должны быть пользователю предоставлены.
0
|
||||||
|
1 / 1 / 0
Регистрация: 08.10.2018
Сообщений: 30
|
|
| 21.12.2018, 01:07 [ТС] | |
|
Я тоже считаю это не логично. Файл должен просматриваться 10-ть раз и обязательно удаляться, возвращая доступ к кнопке "Скачать", если пользователь захочет повторить сессию из следующих 10-ти просмотров. Т.е. тут должен быть, как бы, циклический процесс: 10,9,8,7,6,5,4,3,2,1,удаление - и снова кнопка "Скачать"... 10,9,8,7........
0
|
|
|
1534 / 541 / 127
Регистрация: 09.01.2018
Сообщений: 1,758
|
||||||
| 21.12.2018, 02:33 | ||||||
Сообщение было отмечено aziat-s как решение
Решение
Я думаю, тогда лучше при запуске увеличивать счетчик, а проверять его в событии плеера. Если ролик доиграл до конца или пользователь его остановил кнопкой стоп - то счетчик проверяется и если дальнейший просмотр невозможен - видео удаляется.
Дальше по логике должна быть установлена видимость кнопок. (если видео удалено, т.е. файлов нет - пользователь вместо кнопки плей должен увидеть кнопку скачать). Сейчас только увидел, у вас видимость кнопок и лейблов сразу устанавляивается в false при нажатии на кнопку Play. Т.е. тут дополнительных действий не потребуется.
1
|
||||||
|
1 / 1 / 0
Регистрация: 08.10.2018
Сообщений: 30
|
|||||||||||
| 21.12.2018, 18:04 [ТС] | |||||||||||
|
Да! Так всё работает. У меня ещё небольшой вопрос: Как будет правильней?
И ещё один момент: после 10-го (последнего просмотра) плеер "замирает" на 2,5-3 секунды (видимо происходит удаление файла) и потом исчезает с формы. Можно ли это "зависание" сократить? В принципе, не сильно страшно, но эта "шероховатость", как бы бросается в глаза. Добавлено через 25 минут Вот ролик с программкой https://youtu.be/D2vS-Bdsdig
0
|
|||||||||||
|
1534 / 541 / 127
Регистрация: 09.01.2018
Сообщений: 1,758
|
|||||||
| 22.12.2018, 06:51 | |||||||
|
Ну что ж, тогда поздравляю вас с первым написанным приложением!
Да, действительно, операция удаления занимает некоторое время и приостанавливает работу программы. Дополнительно, из ваших видео я понял, что у вас не самая быстрая машина (у меня во всех случаях плеер закрывается мгновенно, т.е. воспроизвести проблему на 100% мне не удалось). Тогда, надо запускать удаление файла в отдельном потоке. Часть кода, которую надо переписать:
0
|
|||||||
|
1 / 1 / 0
Регистрация: 08.10.2018
Сообщений: 30
|
|
| 22.12.2018, 14:36 [ТС] | |
|
Огромная благодарность за пояснения и помощь.
Действительно, мой DELL 17.4 дюймовый ноутбук с i7 уже в "возрасте", но работает надёжно и без нареканий почти 10 лет, поэтому я к нему привык, как к "старым тапочкам". Попробую ваш вариант и другую машину.Можно ещё вопрос? Как лучше реализовать масштабирование приложения при запуске? Я думаю, что не совсем верно запускать приложение во весь экран, это пользователь должен делать сам по своему усмотрению. В Visual Studio есть функция для формы, чтобы её минимизировать при открытии с указанием размеров, но при этом происходит "скрытие" некоторых элементов на форме. Есть ли какие-то методы смещения элементов на форме в видимую часть окна при этом?
0
|
|
|
1 / 1 / 0
Регистрация: 08.10.2018
Сообщений: 30
|
|
| 24.12.2018, 15:49 [ТС] | |
|
Ну, почти (с марта 2010), а зовут мою "зверушку" Dell Studio 1747 (Intel Core i7 820QM, 8 GB DDR3, 1 ТБ 7200) - не в качестве рекламы, но вот эта модель оказалась на удивление удачной, удобной и живучей.
Касаемо масштабирования, на данном этапе - тогда ограничусь средствами Visual Studio уменьшения размеров формы при старте приложения. Мои познания в С# ещё "желают много лучшего" и самостоятельно я, видимо, пока этот вопрос быстро не вытяну. В дальнейшем же при появлении новых мыслей по обновлению программы можно будет и этот вопрос попробовать решить. Считаю своим долгом в описании программы упомянуть об этом форуме и вашей персональной помощи. Если вы сочтёте это приемлемым и возможным, прошу сообщит мне (можно в личку) ваше имя и фамилию. Ещё раз благодарю за помощь и пользуясь случаем поздравляю с наступающим Новым Годом! Добавлено через 1 час 44 минуты Вопрос о своих личных данных адресуется уважаемому escoult
0
|
|
|
1534 / 541 / 127
Регистрация: 09.01.2018
Сообщений: 1,758
|
|
| 24.12.2018, 17:37 | |
|
Ни в коем случае!
![]() Нет, я не считаю это приемлемым или возможным, и позвольте, не стану объяснять почему. Бесспорно я ценю вашу благодарность. Но не нужно упоминать моих данных или указывать ссылку на мой профиль или никнейм на этом форуме. С наступающим новым годом и вас!
1
|
|
|
1 / 1 / 0
Регистрация: 08.10.2018
Сообщений: 30
|
|
| 24.12.2018, 18:45 [ТС] | |
|
Понял, не буду. Считаю, что данную тему форма можно считать, как РЕШЕНО.
Всех благ всем участникам форума в наступающем Новом 2019 году и новых творческих успехов!
1
|
|
|
1 / 1 / 0
Регистрация: 08.10.2018
Сообщений: 30
|
|
| 25.12.2018, 16:53 [ТС] | |
|
Один маленький вопрос (не совсем по теме), видимо я что-то "накуралесил" в Studio, даёт два предупреждения, которых раньше не было. Как это побороть?
0
|
|
|
1534 / 541 / 127
Регистрация: 09.01.2018
Сообщений: 1,758
|
||
| 26.12.2018, 07:51 | ||
|
0
|
||
| 26.12.2018, 07:51 | |
|
Блокировка кнопки после 2-х нажатий Деактивация кнопки после нескольких нажатий Сохранение xml после n нажатий кнопки Блокировка кнопки после 3 нажатий и активация через 3 секунды После нескольких нажатий на кнопки приложение начинает глючить Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|