Ru-Board.club
← Вернуться в раздел «Программы»

» Autoplay Media Studio

Автор: Djon1970
Дата сообщения: 18.03.2009 07:03
777Dima
Спасибо!
lorents

Цитата:
открываешь справку далее Variables\Global Variables и будет тебе счастье

Ну крутой хакер стал, куда деваться, наверно давно хотелось такой совет дать. Если бы у меня в твоем возрасте компьютер был, может я таких вопросов и не задавал.
PS: Вообще то твой совет уже и не нужен был, на мой вопрос ответил 777Dima, а понимаю понимаю, понтануться надо было.
Автор: Mars803
Дата сообщения: 21.06.2009 11:35
а я делаю по другому, я просто создаю файл russian.lng к примеру, там просто тупо подряд идут слова, а потом их вызываю через чтение файла как таблицу и получаю там lng[2] lng[16] и тд очень удобно
Автор: Alexey87
Дата сообщения: 18.03.2009 16:37
Подскажите, пожалуйста, как решить следующую задачу:
создал две кнопки в проекте: большую и меньшую, расположенную под большой.
Текст в маленькой кнопке в самом проекте как не крути не как не хочет смещаться ни в какую сторону, в утилите Button Maker наоборот, наглядно все показывается что и куда перемещается при задании той или иной координаты для текста.
Выкладываю исходники проекта:
http://ifolder.ru/11116059
Если знаете как сместить текст на кнопке немного правее - подскажите пожалуйста.
Заранее благодарен!
Автор: 777Dima
Дата сообщения: 18.03.2009 17:31
Alexey87

Не совсем понятно, ты хочешь текст просто сдвинуть вправо или как?
Автор: AleksTrin
Дата сообщения: 21.06.2009 11:43
Mars803
Ну это опять же для одной страницы, а как сделать для всех!

Добавлено:
Можно код, пожалуйста!
Что не понятно мне, а как же тада вставлять просто слова в объекты, если это просто слова!

Добавлено:
lng = TextFile.ReadToTable("russian.lng");
WinButton.SetText("Plugin1", lng[4]);
WinButton.SetText("Plugin2", lng[3]); и т.д., это я понял!

А как сделать, чтобы это все отображалось на разных страницах и диалогах?

Добавлено:
К примеру, у меня есть объект Page1_plugin1 и Page2_plugin2, на 1 и 2 странице, как добавить текст чтобы он отображался не только на 1, но и 2 странице, вот про чего я говорю?

Добавлено:
И чтобы это все сохранялось, то есть выбор языка сохранялся, даже если закрыть и открыть программу заново!
Автор: Alexey87
Дата сообщения: 18.03.2009 17:50
Да, именно!
в утилите Button Maker все смещается - вобщем ok!
Но когда вставляю кнопку в проект - как будто ничего не менялось.
На данный момент в проекте нужно сдвинуть текст на маленькой кнопке вправо.
Автор: 777Dima
Дата сообщения: 18.03.2009 18:07
Alexey87
Так просто пощелкай кнопкой пробел в начале своего текста и все
http://img5.imageshack.us/my.php?image=85178043.png
Автор: lorents
Дата сообщения: 21.06.2009 14:20
Сейчас разрабатываю систему обновлений проектов, созданных через Web/Email executable.
прошу посмотреть, как все работает и какие есть замечания и предложения. Это первая версия и сделана исключительно для того что бы посмотреть как все работает.



P.S.: все ссылки в проекта рабочие. Через некоторое время будет выпущена вторая версия, с уже некоторыми функциями.
Автор: Alexey87
Дата сообщения: 18.03.2009 18:28
777Dima
СПАСИБО
Автор: Mars803
Дата сообщения: 21.06.2009 18:47
AleksTrin
у меня на всем проекте работает, создавай файл .ini там укажи языковой файл, таблицу подгружай в actions->on startup
работает на всех страницах
Автор: tavria2
Дата сообщения: 18.03.2009 18:38
Alexey87

Цитата:
На данный момент в проекте нужно сдвинуть текст на маленькой кнопке вправо.

На панели Properties есть св-во XOffset, в котором можно указать горизонтальное смещение для текста.
Автор: RW4PIR
Дата сообщения: 19.03.2009 00:03

Цитата:
data1 = 20;
data2 = 32;

data3 = data1*data1/data2;
data4 = (data1*data2)^0.5;
Dialog.Message("Notice", "Result 1: "..data3 .. "\r\n\r\nResult 2: "..data4, MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);

не работает может чтото не правильно с делал
Автор: lorents
Дата сообщения: 22.06.2009 14:10
нашел баг в плагине WinProgress. Он не работает с диалоговыми окнами

и может кто встречал, если использовать плагин AMSWTimer то возможно появляется ошибка и проект выключается. протестировал вариант с использованием таймера и плагина, одно и тоже действие, через плагин вылетила ошибка.

еще заметил одну очень странную вещь, многие проекты которые я делал на XP прекрасно работают, а вот с Vista бывают проблемы.
Автор: Zloy_Gelud
Дата сообщения: 22.06.2009 22:30
lorents 15:10 22-06-2009
Цитата:
нашел баг в плагине WinProgress. Он не работает с диалоговыми окнами

Это не баг. Это так сказать недоделка.. Лениво делать, чтоб еще и на диалогах работало.
Автор: tavria2
Дата сообщения: 19.03.2009 00:45
RW4PIR
Что не работает? Выдает ошибки? Считает не правильно? Выражайся яснее.
Проверил твой код, все правильно считает.
Автор: RW4PIR
Дата сообщения: 19.03.2009 18:58
не считает скорее всего не туда вставил и перед запуском сообщение выдаёт
result 1: 12.5
result 2: 25.298221281347

Добавлено:
я бы хотел разобратся по подробнее с этим кодом
для чего это
data1 = 20;
data2 = 32;

это понятно это куда будут вводится данные и что сними делать и куда вставлять ответ
data3 = data1*data1/data2;
data4 = (data1*data2)^0.5;

а это
Dialog.Message("Notice", "Result 1: "..data3 .. "\r\n\r\nResult 2: "..data4, MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);

и что надо будет писать если будет больше формул и данных?
заранее спасибо
Автор: lorents
Дата сообщения: 22.06.2009 22:33
Zloy_Gelud

Цитата:
Это не баг. Это так сказать недоделка.. :gig: Лениво делать, чтоб еще и на диалогах работало.

очень, очень плохо, мне это надо было как раз для диалоговых окон

если будет возможность доделай пожалуйста
Автор: tavria2
Дата сообщения: 19.03.2009 19:42
RW4PIR

Цитата:
не считает скорее всего не туда вставил и перед запуском сообщение выдаёт
result 1: 12.5
result 2: 25.298221281347

Согласно твоим формулам, результат абсолютно правильный - проверь калькулятором:
20*20/32 = 12.5
(20*32)^0.5 = 25.298221281347

Цитата:
для чего это
data1 = 20;
data2 = 32;

Это переменные, как в школе, типа X, У и т.д. Имена переменных, назначаешь сам.

Цитата:
а это...

Это действие которое отвечает за вывод данных в диалоговое окно. См.справку.
Автор: Zloy_Gelud
Дата сообщения: 19.03.2009 19:51

Цитата:
перед запуском сообщение выдаёт
result 1: 12.5
result 2: 25.298221281347

Это сообщение выдает

Цитата:
Dialog.Message("Notice", "Result 1: "..data3 .. "\r\n\r\nResult 2: "..data4, MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);

data1 и data2 - это переменные. Им присваиваешь значения (цифровые).
data3 = data1*data1/data2 и data4 = (data1*data2)^0.5 - это собственно формулы.
data3 и data4 - результаты расчетов
Результаты расчетов в данном примере выводились на экран в виде сообщения.
Что не понятного?

Автор: Zloy_Gelud
Дата сообщения: 22.06.2009 23:48
Ребят, созрел вопрос такой: есть вордовский шаблон (DOT). Можно ли как-нить средствами АМС заполнять его содержимое (расчетами, формулами, текстами и т.п.). Видел в одной программе подобное..
З.Ы. Пробывал работать через плаг SendKeys - возможно, но не удобно.
Автор: 777Dima
Дата сообщения: 19.03.2009 20:15
Ребята я отвлеку вас на минутку, подскажите на счет запуска файлов из WEB объекта, хочу убрать окно «Зaпуcтить или coxpaнить этoт фaйл?» читал шапку не помогло. Ссылку в htm документе пишу так: href="klmcodec.exe">
Автор: AleksTrin
Дата сообщения: 23.06.2009 05:43
Mars803
Спасибо, очень помогло!
Автор: tavria2
Дата сообщения: 20.03.2009 14:13
777Dima
Цитата:
подскажите на счет запуска файлов из WEB объекта, хочу убрать окно «Зaпуcтить или coxpaнить этoт фaйл?»

В web-странице нужно указать путь к файлу, относительно проекта, который должен обязятельно начинаться с символа "#" (якорь).

Например: <a href = "#Autoplay\Docs\klmcodec.exe">Кодеки</a>
Исправлено.
Web-объект, событие On Navigate:
Код: local nPos = String.ReverseFind(e_URL, "#", false); -- поиск якоря (#) в строке URL
if (nPos ~= -1) then -- если найден якорь (#)
local nLen = String.Length(e_URL) - nPos; -- кол-во символов после якоря (#)
sFileName = _SourceFolder.."\\"..String.Right(e_URL, nLen); -- путь к файлу
sFileName = String.Replace(sFileName, "%20", " ", false); -- исправляем %20 на пробелы
sWorkFolder = String.SplitPath(sFileName).Drive..String.SplitPath(sFileName).Folder; -- рабочая папка
Shell.Execute(sFileName, "open", "", sWorkFolder, SW_SHOWNORMAL, false); -- запускаем/открываем файл
end
Автор: lorents
Дата сообщения: 23.06.2009 14:52
Не подскажите как можно сделать проверку соединения, если соединения нет, повторить попытку?

Код: IsConnected = HTTP.TestConnection("http://www.google.com", 20, 80, nil, nil);
if (IsConnected == false) then
    result = Dialog.Message("Ошибка", "Приложение не смогло получить доступ к интернету.\r\nВы хотите повторить попытку?", MB_YESNO, MB_ICONQUESTION, MB_DEFBUTTON1);
    if (result == IDYES) then
    --Возвращаемся к первой строчке
    else
        Window.Close(DialogEx.GetWndHandle(), CLOSEWND_SENDMESSAGE);
        Window.Close(Application.GetWndHandle(), CLOSEWND_TERMINATE);
    end
else

end
Автор: 777Dima
Дата сообщения: 20.03.2009 15:35
tavria2

Теперь понятно всё, Спасибо.
Автор: Zloy_Gelud
Дата сообщения: 21.03.2009 17:20
Ребят, очень нужна функция наподобие Tree.FindNodeByText без_учета_регистра_букв, т.е. nocase
Написал заготовку:

Код: function Tree.FindNodeByTextEx(strObject, strStartNodeIndex, strValue)
    strResult = "";
    function x(strNode)
        nCount = Tree.GetChildCount(strObject, strNode);
        for i=1, nCount do
            strInd = strNode.."."..i;
            if (Tree.GetNode(strObject, strInd) ~= nil) then                    
                tbl[Table.Count(tbl) + 1] = {Text = Tree.GetNode(strObject, strInd).Text, IndexNode = strInd};
                if (Tree.GetChildCount(strObject, strInd) ~= -1) then
                    x(strInd);
                end
            end
        end
    end

    tbl={};
    for n=1, Tree.GetChildCount(strObject, strStartNodeIndex) do
        if (strStartNodeIndex == "0") then
            strStartNodeIndex = "1";
        end
        tbl[Table.Count(tbl) + 1] = {Text = Tree.GetNode(strObject, strStartNodeIndex).Text, IndexNode = strStartNodeIndex};
        x(strStartNodeIndex);
    end
    if (Table.Count(tbl) == 0) then
        for i = String.Left(strStartNodeIndex, 1)+1, Tree.GetChildCount(strObject, "0") do
            tbl[Table.Count(tbl) + 1] = {Text = Tree.GetNode(strObject, i).Text, IndexNode = i};
            x(i);
        end
    end
    if (Table.Count(tbl) > 0) then
        for i=1, Table.Count(tbl) do
            if (String.Lower(tbl[i].Text) == String.Lower(strValue)) then
                strResult = tbl[i].IndexNode;
                break;
            end
        end
    end
    return strResult;
end
Автор: UMode
Дата сообщения: 23.06.2009 16:46
lorents
Вроде бы так:

Код: while HTTP.TestConnection("http://www.google.com", 20, 80, nil, nil) == false do
result = Dialog.Message("Ошибка", "Приложение не смогло получить доступ к интернету.\r\nВы хотите повторить попытку?", MB_YESNO, MB_ICONQUESTION, MB_DEFBUTTON1);
if (result == IDNO) then
Window.Close(DialogEx.GetWndHandle(), CLOSEWND_SENDMESSAGE);
Window.Close(Application.GetWndHandle(), CLOSEWND_TERMINATE);
end
end
Автор: Zloy_Gelud
Дата сообщения: 21.03.2009 23:29
И еще вопрос. Можно ли установить глобальный хук на нажатия клавиш?
Автор: lorents
Дата сообщения: 23.06.2009 17:12
UMode
спасибо!
Автор: tavria2
Дата сообщения: 22.03.2009 13:19
Zloy_Gelud
Цитата:
нужна функция наподобие Tree.FindNodeByText без_учета_регистра_букв
Исправлено.
Код: function FindNodeByTextEx (ObjectName, Index, Text)
tNodeProp = Tree.GetNode(ObjectName, Index); -- св-ва ноды
if tNodeProp and String.Lower(tNodeProp.Text) == String.Lower(Text) then -- если нашли
Res = Index; -- возвращаеиый результат
else -- если не нашли
Res = "";
tChilds = Tree.GetChildren(ObjectName, Index); -- таблица дочерних элементов
if tChilds then -- если есть дочерние элементы
for n, tChildProp in tChilds do -- в цикле проходим по дочерним элементам
if Res ~= "" then break end; -- если есть результат, то прерываем цикл
FindNodeByTextEx (ObjectName, tChildProp.NodeIndex, Text); -- рекурсивный вызов ф-ции
end
end
end
return Res
end

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132

Предыдущая тема: PHP RapidGet Pro V


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.