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

» Autoplay Media Studio

Автор: tavria2
Дата сообщения: 28.05.2010 14:21
qqwwrr
Давай еще раз уточним твою проблему. У тебя поиск работает нормально? Т.е., что ввел, то и нашел, но ты хочешь запретить поиск, если искомая подстрока слишком мала.
Если так, то перед поиском нужно проверять длину строки в Input:

Код: sSearch = Input.GetText("Input1"); -- строка для поиска из Input
nMinLen = 3; -- минимальная длина строки
if (String.Length(sSearch) > nMinLen) then -- если строка для поиска больше минимальной длины строки
ListBox.DeleteItem("ListBox1", -1);
tblPages = Application.SearchKeywords(sSearch, true, false);
if tblPages then
for i, v in tblPages do
for k, value in v do
ListBox.AddItem("ListBox1", i.." - "..value, i);
end
end
end
end
Автор: qqwwrr
Дата сообщения: 28.05.2010 15:35
tavria2
Спасибо!!! Это то, что доктор прописал )
Автор: KENT154
Дата сообщения: 28.05.2010 15:52
Я так и не разобрался с со своим вопросом, справку перерыл всю, но у мера так не что и не вышло, они вопрос был на 5й страници про создание ярлыка, может пример кто кинет? форум читать тоже тяжело я с телефона
Автор: lerik2703
Дата сообщения: 28.05.2010 20:44
KENT154
в справке есть поисковик набираешь действие которое тебе подсказал tavria2
и..
объяснение функции и пример

Цитата:
Shell.CreateShortcut(_DesktopFolder, "My Shortcut", "C:\\Program Files\\MyApp\\app.exe", "", "", "C:\\Program Files\\MyApp\\myicon.ico", 0, SW_MAXIMIZE, nil);

Creates a shortcut on the user's Desktop with the "myicon.ico" file icon and the label "My Shortcut." The shortcut is set to point to the file "app.exe" and will launch it in "maximized" mode.
Автор: DarkEsys
Дата сообщения: 30.05.2010 20:42
Привет всем! Помогите пожалуйста, я вообще новичок в Autoplay но более менее в скриптах разбираюсь, хотя писать их всё равно не умею. Мне нужно сделать 2 связанных комбобокса, в моём случае в первом список групп, во втором список клипов той или иной группы и соответственно нужно чтоб при выборе клипа он воспроизводился в видео плеере. Делаю проэкт, всё сделал ток это не получается, прошу помощи...
Автор: temmy
Дата сообщения: 30.05.2010 22:27
Здравствуйте. Здоровский форум оочень много интерсного.
У меня проблемка вышла, может кто подскажет.
Сделал всплывающее меню, при наведении курсора в определенную область, все работает, но оно уезжает за Web-объект. Как выставить приоритеты, что бы меню поверх выезжала. В меню изображение и пара лейбелов.
Заранее спасибо.
Автор: LEDRA
Дата сообщения: 31.05.2010 08:59
День добрый. Подскажите плиз, нужно чтобы диалоговое окно открывалось (result = DialogEx.Show("Dialog2", true, nil, nil);) в определенном размере.
Такое возможно?
Автор: lerik2703
Дата сообщения: 31.05.2010 12:18
LEDRA
Window.SetSize(DialogEx.GetWndHandle(), 100, 150);
Автор: tavria2
Дата сообщения: 31.05.2010 14:38
lerik2703

Цитата:
Window.SetSize(DialogEx.GetWndHandle(), 100, 150);

Размер конечно изменится, но так делать нежелательно. Для этого существуют действия: Application.GetDialogProperties и Application.SetDialogProperties, с помощью которых можно менять не только размер

Почему нежелательно использовать твой пример:
Диалог не будет отцентрирован, потребуются дополнительные манипуляции с вычислением и установкой новой позиции диалогового окна.
DialogEx.GetSize - будет возвращать неправильный размер диалогового окна, меньше на толщину 2-х рамок (2x2=4px).


temmy

Цитата:
Сделал всплывающее меню, при наведении курсора в определенную область, все работает, но оно уезжает за Web-объект. Как выставить приоритеты, что бы меню поверх выезжала. В меню изображение и пара лейбелов.

Никак.
Объекты, у которых имеется дескриптор (WindowHandle) - всегда будут над объектами без дескриптора. У Web-объект имеется дескриптор, а у изображения и лейбелов его нет, поэтому Web-объект и накрывает твои картинки и лейбелы и установка z-порядка тебе не поможет.
Автор: LEDRA
Дата сообщения: 31.05.2010 14:54
Спасибо! буду пробовать
Автор: Lexua
Дата сообщения: 31.05.2010 15:58
temmy

Цитата:
Никак.
Объекты, у которых имеется дескриптор (WindowHandle) - всегда будут над объектами без дескриптора. У Web-объект имеется дескриптор, а у изображения и лейбелов его нет, поэтому Web-объект и накрывает твои картинки и лейбелы и установка z-порядка тебе не поможет.


Единственный извратный способ скрывать Web-объект на время манипуляций с меню.
Автор: lerik2703
Дата сообщения: 31.05.2010 16:16
tavria2
Ну с вычислением центрировки не сложно

Код: screen_info = System.GetDisplayInfo();
nPosX=screen_info.Width/2-200
nPosY=screen_info.Height/2-170
Window.SetSize(DialogEx.GetWndHandle(), 400, 300);
Window.SetPos(DialogEx.GetWndHandle(),nPosX, nPosY);
Автор: temmy
Дата сообщения: 31.05.2010 17:16
Спасибо за ответ. Буду искать альтернативу.
Автор: tavria2
Дата сообщения: 31.05.2010 17:42
lerik2703

Цитата:
Ну с вычислением центрировки не сложно

Может быть ты не заметил, но диалоговое окно центрируется относительно окна проекта, а не относительно экрана, да и не в этом суть, зачем производить ненужные манипуляции, если есть штатные средства.
Автор: lerik2703
Дата сообщения: 31.05.2010 17:59
tavria2

Цитата:
Может быть ты не заметил, но диалоговое окно центрируется относительно окна проекта

Заметил,я не учел меню пуск

Цитата:
зачем производить ненужные манипуляции, если есть штатные средства.

Да с этим я согласен
Автор: temmy
Дата сообщения: 31.05.2010 18:15
А еще у меня вопросик с переименовыванием ресурсов.
1. При создании проекта, все переименовывает в dat, кроме документов и дистрибутивов программ.
2. В скрипте видео-объекта используется имя воспроизводимого файла, а так как все переименовано в ap*.dat, то условия не выполняются, имя уже другое.
Подскажите, как можно рещить эти проблемки?
Автор: lorents
Дата сообщения: 31.05.2010 23:59
tavria2
На счет кода повторного запуска приложений, не подскажешь, код должен работать с приложениями которые при запуске открываются на весь экран монитора?
Просто у меня не работает
Автор: lerik2703
Дата сообщения: 01.06.2010 09:08
Пример написания простой игры в АМS Собери Девочку-3
Автор: tavria2
Дата сообщения: 01.06.2010 09:29
lorents

Цитата:
На счет кода повторного запуска приложений, не подскажешь, код должен работать с приложениями которые при запуске открываются на весь экран монитора?
Просто у меня не работает

Должен работать. У тебя все приложения не восстанавливаются или некоторые?
Дело в том, что не все приложения заботятся о сохранении предыдущего состояния окна и поэтому невозможно восстановить окно в нужное состояние.
Простой пример, в AMS не сохраняется полноэкранное состояние, в режиме трей - разработчики обещали исправить.
Автор: lorents
Дата сообщения: 01.06.2010 10:34
tavria2
у меня приложение сразу после запуска открывается на весь экран
Вот эта программа, если можешь посмотри
http://multi-up.com/282113
Параметры для запуска "/S /L playlist.txt"

И еще как можно вызвать это окно в AMS 8. раньше использовал плагин AMSWCommonDialogs

Автор: lerik2703
Дата сообщения: 01.06.2010 10:53

Цитата:
И еще как можно вызвать это окно в AMS 8. раньше использовал плагин AMSWCommonDialogs

Код: result = Dialog.FileBrowse(false, "Locate File", _DesktopFolder, "All Files (*.*)|*.*|", "", "dat", false, false);
Автор: lorents
Дата сообщения: 01.06.2010 11:14
lerik2703
чета я сам не догадался это сделать, думал опять то маленькое окно будет
Спасибо!
Автор: tavria2
Дата сообщения: 01.06.2010 11:45
lorents
У меня все работает.
Обрати внимание на то, что в строке: file_to_check_for = "pptview.exe";
нужно указывать имя процесса только в нижнем регистре, т.к. при сравнении у тебя идет преобразование в нижний регистр.
Автор: lorents
Дата сообщения: 01.06.2010 11:52
tavria2
Спасибо получилось, я чета с туплю последнее время
Автор: lerik2703
Дата сообщения: 01.06.2010 11:54
Ну вот что бы так постоянно не забывать нельзя ли сделать так-то так?
file_to_check_for =String.Lower("Рptview.exe")
Автор: tavria2
Дата сообщения: 01.06.2010 13:24
lerik2703
Ты прав, но лучше это сделать в строке сравнения - будет нагляднее в каком регистре находятся оба значения:
if (String.Lower(file.Filename..file.Extension) == String.Lower(file_to_check_for)) and (File.GetAttributes(file_path).WriteDateISO == ID) then
Автор: sanya 007
Дата сообщения: 01.06.2010 16:41
Господа, у никто не сталкивался, с тем что Window.SetMask работает не всегда чётко.
1. Не совсем чисто делает прорезку, я уже и в PNG с максимальным качеством сохранял, а всё равно, грязь после прорезки остаётся.
2. С номерами цветов вообще интересно, я делаю так, в Фотошопе получаю номер в 16-ричной системе, потом виндовским калькулятором перевожу в 10-ричную систему, и некоторые цвета, отказываются прорезаться.

Автор: qroposat
Дата сообщения: 01.06.2010 17:12
Подскажите, как сделать в проекте что бы приложение запускалось только при вводе пароля?
Автор: Lexua
Дата сообщения: 01.06.2010 21:22
qroposat
Создаешь DialogEx и в нем объект Input

Код в Project -> Actions -> On Startup


Цитата:
DialogEx.Show("Dialog1", true, nil, nil);


Код в Input -> On Key


Цитата:
if e_Key == 13 then
result = Input.GetText("Input1");
DialogEx.Close(0);
end


Код в Dialog Properties -> On Close


Цитата:
if result ~= "qwerty" then -- qwerty - требуемый пароль
Application.Exit(0);
end


Это пример для запуска самого проекта. Или я тебя не правильно понял?
Автор: lerik2703
Дата сообщения: 01.06.2010 22:13
tavria2
согласен я так же подумал что лучше при сравнении но при помощи действия String.CompareNoCase но с оператором and в одной строке ни как это не клеется

Lexua
В учебнике не плохой пример есть!Dialog.PasswordInput

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140

Предыдущая тема: Media Player Classic - Home Cinema (MPC-HC)


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