Добро пожаловать к нам в гости! Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
Приветствую! Делаю календарь, с возможностью выбора даты. Кликом можно установить или снять выделение нужной даты. Календарь создается налету, имеется 37 полей в кторые в зависимости от месяца устанавливаются дни по порядку. Первое число месяца может попасть как в поле 1 так и в поле 7 в зависимости какой это день недели. Заголовки этих полей имеют переменные от calendarData1-calendarData37. Выбранные даты записываю в массив, так вот чтобы получить номер дня недели пытаюсь взять его из заголовка объекта:
Однако получаю не число из переменной, а саму переменную, т.е. в select попадает например [calendarData1], а не содержащееся в ней число. Вопрос к знатокам, можно ли как то получить число?
Можно получить числа из [select] с помощью штатных команд работы со строками. Но проще сразу командой SetVar поместить нужное значение в отдельную переменную, которая будет заполняться кликом по нужному полю.
С помощью каких объектов сделаны "поля" календаря?
Вообще, для создания календаря и работы с датами есть плагины, которые упрощают разные задачи: asCalendar (Андрей Солодянкин) asDatePicker (Андрей Солодянкин) asMonthPlanner 1.4 (Андрей Солодянкин) dec_Plus 1.9 (David Esperalta) hpwUtility 2.16 (Hans-Peter Wickern) faDateTime 1.0 (Андрей Фролов) FileUtils (Drazen Glojnaric, Marije Ljolje) NeoBookDBPro 1.6a (NeoSoft Corp.) - NeoDBpro (SinLios) tmDates 1.01 (Alberto Meyer)
Вадим, спасибо Вам за ответ! Календарь создается на лету, в поля записаны переменные [C1] - [C37], с помощью команды GetObjectInfo как раз берутся название этих переменных, а не содержимое. Т.е. после применения команды, на первое поле я получаю строку [C1], а не число 1. Я переписал немного код, и теперь другим способом получаю числа, просто через GetObjectInfo казалось это проще. Пробую прикрепить изображение, может так будет понятнее, что пытался сделать.
Добавлено (05 Мая 2022, 18:01) --------------------------------------------- Отдельное спасибо за список плагинов, поищу и попробую их. В программе я использую два плагина NeoDatePicker видимо это аналог плагина asDatePicker (Андрей Солодянкин) и tmDates 1.01 (Alberto Meyer).
Да, решение найдено. Можно было это сделать 3 или даже 4 способами. На всякий случай выкладываю исходник с папками Functions и Plagins. Если будет интерес, можете скомпилировать и посмотреть. Если в меню нажать на пункт "Выбрать праздники", появится окно с календарем. На будние дни в календаре можно кликать и отмечать их праздничными. Вверху окна появится результат работы GetObjectInfo, который будет выводить имя переменной, а не число, ну а чуть ниже, то что нужно было, т.е. число, на которое был клик в календаре.
Вадим, по Вашему совету решил посмотреть обозначенные плагины. Начну с первого - asCalendar (Андрей Солодянкин), очень функциональный плагин, однако обнаружилась некоторая не приятная проблема. При создании календаря хотел поменять название дней недели и месяцев на кириллические, ПОН, ВТО, СРЕ... ЯНВАРЬ, ФЕВРАЛЬ и т.д., но, к сожалению, получаю их не буквами алфавита, а "крякозябрами". При чем набираю, все хорошо, как только делаю переход к другому полю, предыдущий меняет нормальный шрифт на крякозябры, если снова кликнуть по предыдущему полю, то снова все хорошо. Сохраняются в команду тоже хорошо, но вот при компиляции снова крякозябры. На скриншоте видно, что даже в тексте плагина не правильный вывод текста. Пробовал ставить английскую версию, тоже самое. В других, ранее используемых плагинах такого нет. Может быть кто подскажет в чем может быть дело. Изображение прилагаю, система Виндовс 11, NeoBook 5.8.7
Да, у меня повторяется проблема и тоже Windows 11 (64), VisualNEO Win. Почему-то VisualNEO Win при запуске зависает, если этот плагин установить. А если его установить при загруженной VisualNEO, и запустить тестовую компиляцию, то VisualNEO зависает при попытке отобразить дебаггер. Окно проекта не успевает отобразиться.
Видимо проблема в совместимости плагина с виндой 11-й версии. Я тестировал этот плагин на семёрке и он отлично работал. Наверное есть смысл попробовать пока другой плагин. Но asMonthPlanner я на 11-й винде тоже не смог запустить. Остальные не проверял.
Добавлено (07 Мая 2022, 18:21) --------------------------------------------- Я сообщил Андрею (разработчику плагина). Он сказал, что посмотрит, что можно сделать
Добавлено (07 Мая 2022, 18:45) --------------------------------------------- Андрей (разработчик плагина) Вам предлагает поменять шрифт на Tahoma, говорит, что не все старые шрифты поддерживаются. Поэкспериментируйте со шрифтами.
Сейчас поэкспериментировал на Win 10, поставил в настройках проекта шрифт Tahoma, также в команде asDPickerFont установил этот шрифт. Казалось бы изменений не произошло, в окне плагина также крякозябрами, а вот после компиляции в календаре скомпилированной программы появились нормальные кириллические буквы. Спасибо Вам и Андрею!
До этого стоял шрифт Arial.
Сообщение отредактировано frolandr - Сб, 07 Мая 2022, 19:31
Спасибо за обновленную версию. В этой версии уже нет крякозябров, но к сожалению есть другой баг(вернее наверное не правильная работа в Вин 10). Создаю командой asCalendarCreate календарь, вписываю короткие названия дней недели, сохраняю. Все просто отлично, но если попытаться отредактировать эту команду, то названия дней недели уже не попадают в окно плагина и при повторном сохранении исчезают. У меня Виндовс 10 и 11, обе 64 битные.
В Виндовс 11 все отлично. При написании команд не пропадают внесенные изменения. Крякозябров также нет. При компиляции крякозябры тоже пропали, если изменить шрифт на Tahoma.
Спасибо большое, за внесение изменений.
Только вот точно такие же проблемы с плагином asDatePicker
Сообщение отредактировано frolandr - Сб, 07 Мая 2022, 22:19
Постараюсь исправить ошибки.(asDatePicker) не быстро - времени на всё нехватает. Желательно указывать какая команда не работает или работает с ошибками , т.к. на поиски уходит много времени. простые-типа крякозябров - решаются быстро.
Здравствуйте, Андрей! Спасибо Вам за отличные и нужные плагины. По тестированию плагина asDatePicker в Windows 10 и Windows 11. Крякозябры появляются в командах: asDPickerCreate asDPickerNameMounths Еще я не нашел команду "Установить день начала недели на календаре", подобной asCalStartDay в плагине asCalendar. Она была бы очень востребованной для тех, кто хочет установить начало недели с понедельника, а не с воскресенья, как сейчас по умолчанию. Возможно, я просто не понял, как можно установить начало недели на понедельник. После создания объекта DataPicker, если его открыть, а основное приложение свернуть в трей, то календарик остается открытым, а на панели задач появляется отдельная вкладка для него.
frolandr, у меня к вам просьба протестировать плагин asCalendar/ Плагин поправил, проблеммы с кодировкой убрал, должен работать нормально. У меня не установлена Винда 11 или Винда 10 ( тем более 64 бит) - так что на вас вся надежда. )-
Протестировал плагин asCalendar на Win 11. Все отлично работает! Команды все работают без нареканий. Пробовал несколько шрифтов: Arial, Comic Sans MS, Century Gothic, Calibri, Courier New, Georgia, Impact, Lucida Console, MS UI Gothic - крякозябров нет. При выборе шрифта нужно контролировать, чтобы набор символов был "кирилический". В некоторых шрифтах его просто нет, а в которых есть иногда по умолчанию стоит "западноевропейский", в этом случае будут крякозябры.
поправил плагин asDatePicker. Убрал крякозябры в окне помощника кода , добавлены 2 команды (в конце команд плагина) - выбор начала недели , свернуть-развернуть окно календаря
Ого, как быстро. Сейчас начинаю тестирование, особое спасибо за дополнительные команды! В прошлом сообщении забыл написать, что плагин asCalendar протестировал и на Win 10. Все отлично работает.
Плагин asDatePicker тестирую на Win 10. Пока вижу такое: вписываю в команду asDPickerNameMounths параметры в виде месяцев. Сохраняю, все хорошо, но если кликаю на эту команду для редактирования, то месяцы не прописываются в окне плагина. Все поля пустые, как будто переменные полей не подхватывают значения из команды.
Пока вижу такое: вписываю в команду asDPickerNameMounths параметры в виде месяцев. Сохраняю, все хорошо, но если кликаю на эту команду для редактирования, то месяцы не прописываются в окне плагина.
странно как то . На ВИН7 отлично всё работает .....
Добавлено (08 Мая 2022, 19:29) --------------------------------------------- Н уи что самое интересно - сравнил два исходника asCalendar и asDataPicker - итог : две команды которые сохраняют названия месяцев и дни недели идентичны друг другу - вообще ничем не отличаются Я окно помощи одного плагина скопировал в другой плагин .- что б не писать лишнего кода. вообще не понятно почему в одном работает - а в другом пропадает ( при редактировании) , но повторюсь - в WIN7 всё работает на "УРА"....
Сообщение отредактировано AS3856 - Вс, 08 Мая 2022, 19:18
Хмм, в предыдущем плагине все ок, в этом asDPickerNameMounths на "десятке чудит", на win 11 вчера было нормально, позже посмотрю, пока на десятке тестирую. Вот еще командой asDPickerGetDates "Rectangle1" "[Value]" не могу получить значение в переменную.
Появилась небольшая идея по поводу пропажи - реализовал. опробуйте на ВИНДЕ 10 или 11 -У меня на ВИН 7 идёт норм -в архиве подправленный плагин - последнее что пришло в голову ....
Добавлено (08 Мая 2022, 19:51) ---------------------------------------------
Цитатаfrolandr ()
Вот еще командой asDPickerGetDates "Rectangle1" "[Value]" не могу получить значение в переменную.
а при запуске демки команда работает ? - Она есть в кнопке - посмотри что получаешь в дебаггере....
Перешел сейчас на 11 виндовс, таже проблема с пред. версией плагина asDPickerCreate работает норм, а вот asDPickerNameMounths при редактировании так и не подхватывает параметры в окно плагина.
Сейчас попробую последнюю версию.
Добавлено (08 Мая 2022, 19:56) ---------------------------------------------
ЦитатаAS3856 ()
Я окно помощи одного плагина скопировал в другой плагин .- что б не писать лишнего кода.
Пишу немного на php и js, очень часто при копировании происходят ошибки. Хочется быстрее, копирну, а в другом месте, куда вставляю чуть переменные изменил или еще что и ошибку поймаю, потом ищу долгое время
Пишу немного на php и js, очень часто при копировании происходят ошибки. Хочется быстрее, копирну, а в другом месте, куда вставляю чуть переменные изменил или еще что и ошибку поймаю, потом ищу долгое время
К сожалению в новой версии плагина и команда asDPickerCreate заразилась. Тоже самое, при редактировании параметры не попадают в окно. В предыдущей версии эта команда работала. Посмотрите, может увидите в чем проблема теперь.
Добавлено (08 Мая 2022, 20:02) --------------------------------------------- Подождите... Ошибка происходит если не заполнены все 7 полей.
Добавлено (08 Мая 2022, 20:03) --------------------------------------------- Если дни недели заполнить все 7 полей, то отрабатывает все хорошо. Я просто думал, что если даже 2-3 поля заполнить, при редактировании они должны попадать в поля.
Добавлено (08 Мая 2022, 20:05) --------------------------------------------- Да, вот даже 6 полей заполнил в команде asDPickerCreate, она сохранилась нормально, а при редактировании, не один параметр не попал в поля, все пустые. Если заполняю все 7, то и редактируется нормально.
Добавлено (08 Мая 2022, 20:08) --------------------------------------------- Еще дополнение, проблема если не заполнены крайние снизу поля. Т.е. если заполняю всего два поля первое и последнее, то редактирование проходит нормально. А вот если последнее пустое или два последних пустые, то редактирование не происходит.