53558 Не надо добавлять Chr(13) , читается не строка, а поток, в нем уже есть эти символы, и для совместимости с OemA2Ansi(Str$) читать надо поток надо в Raw виде, без преобразований. Код: Output$ + ReadProgramString(Prog,#PB_Unicode)
В данном случае не умещается в сообщение и оно выходит за пределы окна... Хотя, по мне так, проще создать новое окно и разместить в нем инфу с прокруткой... Не только проще, а прямо необходимо, ибо из сообщения неудобно копировать ключи (или всё или ничего)
Последний раз редактировалось: Joker-2013 (2018-05-10 11:43), всего редактировалось 1 раз
53611Так то интереснее, если не будет проблем с кодировками...
С кодировками не будет, но для красоты вывода иногда добавляются спец символы, их надо фильтровать, что в общем-то не составляет проблему. Как вариант, можно поменять кодовую страницу на 1251, но не все программы ее используют, некоторые могут просто проигнорировать, поэтому вариант с OemA2Ansi универсальнее.
53610В данном случае не умещается в сообщение и оно выходит за пределы окна...
На AutoIt3-версии справка выводится в новое окно с Edit. Упирается во время.
Joker-2013 писал(а):
53618Для добавления окон, нужно переделать цикл событий
На AutoIt3, когда окно делаешь дочерним цикл переделывать не надо, родительское само перестаёт обрабатывать события и не имеет доступа, а в дочернем свой цикл.
nikzzzz писал(а):
53558Не надо добавлять Chr(13)
Ну во первых код я взял целиком из примера в справке, во вторых, без Chr(13) у меня всё в одной строке, всё в куче. Joker-2013 Иконки пока думаю лишнее. С точки зрения системы в LiveCD иконки будут разделятся на несъёмный и съёмный, в обычной винде добавится иконка системного диска, ну и если принудительно иконки сменяны то они. У нас Rem и Fixed определяют тип, иконками только это определяется. В общем не несут они ничего, если только сделать свои 2 иконки на эти два типа и назначать взависимости от типа. Обновил ссылку на пастбин, добавил номера дисков
53622На AutoIt3, когда окно делаешь дочерним цикл переделывать не надо, родительское само перестаёт обрабатывать события и не имеет доступа, а в дочернем свой цикл.
в пьюрике всё в куче. Переделывать то не много, точнее совсем малость... обработку закрытия окон. У меня есть хорошее решение, которое обрабатывает все события, но в моей проге...
AZJIO, из меня подсказчик плохой... Но всё предельно просто. Окна не блокируются, можно заблокировать вручную. События обрабатываются в основном цикле, по номеру гаджета... Вот как у меня реализовано: Я бы дал пример, но мне его создавать долго, может кто более продвинутый, поможет... Дочернее окно, не имеет своего значка в панели задач. Как я заметил, у вас возникают сложности, из за знания AutoIT и попытки делать код по подобию... А язык то отличается... Вот у nikzzzz таких проблем не возникает, он у нас, многозадачный...
53664Как я заметил, у вас возникают сложности, из за знания AutoIT и попытки делать код по подобию...
У AutoIt3 нет проблем создать любой вид окна и дочернее без блокировки и дочернее с одним циклом и переключением между окнами и перебросом данных из одного в другое и самостоятельные окна с взаимодействием (разные скрипты) и сделать чужое окно дочерним по отношению к окну AutoIt3. Но!!! я обсуждаю вариант, который нужен мне, а не и ситуации что я не могу по иному. Во первых существует порядок/иерархия окон, допустим ты закрыл родительское, как поступать с дочерним? Оно должно закрыться или остаться, что если там данные о которых ты вспомнил когда закрыл родительское?
AZJIO, Дождался... Я там тебе ответил... Такой цикл обработки событий, по моему мнению, оптимальный, я до него дошел, не сразу... Обновил код, по моему, отличный пример получился, можно расширить и выложить. Для новичков, просто находка. AZJIO, так я и писал про подход... В пьюрике всё вполне просто, но наверное чуть по другому чем в AutoIT...
53664Как я заметил, у вас возникают сложности, из за знания AutoIT и попытки делать код по подобию..
Joker-2013 писал(а):
53672AZJIO, так я и писал про подход... В пьюрике всё вполне просто, но наверное чуть по другому чем в AutoIT...
Ну в итоге то по подобию. И знание AutoIt3 в этом помогает. Они же оба используют виндовые функции, ресурсы винды и принцип чтобы это повторить одинаковый. В принципе я искал название аналогов функций и способ передачи дескриптора родительского окна дочернему, что не всегда может быть дескриптором, а внутренним номером связанным с дескриптором. В AutoIt3 к примеру когда получает дескриптор открытого файла возвращает порядковый номер, казалось бы как такое может быть, а причина что он внутри движка содержит именные списки-таблицы для связи идентификаторов с дескрипторами и при завершении автоматом закрывает ресурсы зная сколько элементов в таблице. Но в автоите передаёшь дескриптор для окна, а тут он через внутренний список, подобно файловым дескрипторам в AutoIt3.
AZJIO, В принципе, не принципиально на чем писать, все зависит от библиотек, когда их не хватает, возникают проблемы, Autoit имеет огромное преимущество, там только один тип данных - Variant, это позволяет не думать ни о преобразовании типов, ни долго их описывать. Но я ничего не понял из твоего поста, в принципе отличия не большие, приведи простой пример на Autoit, я не понимаю, в чем проблема.
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете прикреплять файлы к сообщениям Вы можете скачивать файлы