|
04.03.2009, 04:39
|
#1
|
AnyKey`щик
Регистрация: 03.03.2009
Сообщений: 8
Написано 0 полезных сообщений (для 0 пользователей)
|
Что у меня неверно?
Вчера начал кодить на Мидлет Паскале. Поэтому не ржать Вот почему тут ошибка, понять немогу:
if userName <> 't9ote48te' Or kotName <> '7ion' then
вот в этой строке. Переменные объявлены так и до этого все идет так:
var okCommand:command;
nameField:integer;
kotField, label_id:integer;
userName:string;
kotName:string;
cm : command;
begin
okCommand := createCommand('Далее', CM_OK, 1);
showForm;
addCommand(okCommand);
setTicker('Simple Antivirus');
label_id := formAddString('Cracked by 7ion. Введенный ключ и имя оставьте в покое и жмите далее ;)');
kotField := formAddTextField('Введите имя', '7ion', 20, TF_ANY);
nameField := formAddTextField('Введите лицензионный ключ', 't9ote48te', 20, TF_ANY);
userName := formGetText(nameField);
kotName := formGetText(kotField);
if userName <> 't9ote48te' Or kotName <> '7ion' then
и еще - что в этой строке
kotField := formAddTextField('Введите имя', '7ion', 20, TF_ANY);
означает TF_ANY и что еще туда можно подставить? заранее спасибо.
|
(Offline)
|
|
04.03.2009, 23:39
|
#2
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Ответ: Что у меня неверно?
В первом случае, скорее всего дело в том, что не расставлены скобки,
должно быть
if (userName <> 't9ote48te') Or (kotName <> '7ion') then
На счет TF_ANY - читаем хелп (раздел "Forms"), TF_ANY означает, что можно вводить любые символы, есть еще
· TF_EMAIL - для email адреса
· TF_NUMERIC - только для чисел
· TF_PHONENUMBER - для телефонного номера
· TF_URL - только символы, допустимые в URL
· TF_PASSWORD - выводит "*" вместо текста
И в случае ошибок настоятельно рекомендую писать не только где ошибка, но и какая.
|
(Offline)
|
|
05.03.2009, 01:39
|
#3
|
AnyKey`щик
Регистрация: 03.03.2009
Сообщений: 8
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Что у меня неверно?
спасибо большое за помощь, все заработало. но теперь новая проблема. при выборе "О программе" хотелось бы видеть бегущую с надписью о программе. но меня почему-то заместо этого выкидывает из эмулятора. что могло случится? или он выполняет команду меню "Выход"? помогите пожалуйста.
showMenu('Simple Antivirus 2009', CH_IMPLICIT); about := menuAppendStringImage('О программе', loadImage('/exit.png')); exit := menuAppendStringImage('Выход', loadImage('/exit.png')); okCommand2 := createCommand('Выбор', CM_OK, 1); addCommand(okCommand2); while (getClickedCommand <> okCommand2) do delay(100); showForm; if menuGetSelectedIndex = about then begin setTicker('О программе'); end if menuGetSelectedIndex = exit then halt; end.
|
(Offline)
|
|
05.03.2009, 01:49
|
#4
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Ответ: Что у меня неверно?
Конечно выкидывает, так и надо. После проверки условия
if menuGetSelectedIndex = exit then halt; сразу попадаем на end, поток завершается. Надо делать что-то в роде этого после SetTicker:
//В разделе var clicked,cmdOK:Command; //после setticker cmdOk:=CreateCommand('OK',CM_OK,1); addCommand(cmdOK); repeat clicked:=getClickedCommand; delay(100); until clicked=cmdOK;
Примерно так, тогда выйдет только при нажатии команды ОК.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
05.03.2009, 02:25
|
#5
|
AnyKey`щик
Регистрация: 03.03.2009
Сообщений: 8
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Что у меня неверно?
здорово) я как то сам не подумал что оно-то выполняется, но просто сразу завершается. кстати, чтобы ждать нажатие кнопки юзаю более простую конструкцию:
cmdOk:=CreateCommand('OK',CM_OK,1); addCommand(cmdOK); repeat delay(100); until getClickedCommand <> emptyCommand;
но вот опять вопрос как работать с Goto? я слышал что нужно поставить якорь где надо, а когда надо на него перейти, то написать Заюзал эту конструкцию в попытке перейти с кнопки на меню
ty: showMenu('Simple Antivirus 2009', CH_IMPLICIT); about := menuAppendStringImage('О программе', loadImage('/exit.png')); exit := menuAppendStringImage('Выход', loadImage('/exit.png')); okCommand2 := createCommand('Выбор', CM_OK, 1); addCommand(okCommand2); while (getClickedCommand <> okCommand2) do delay(100); showForm; if menuGetSelectedIndex = about then begin clearForm; setTicker('О программе'); cmdOk:=CreateCommand('OK',CM_OK,1); addCommand(cmdOK); repeat delay(100); until getClickedCommand <> emptyCommand; GoTo ty end if menuGetSelectedIndex = exit then halt; end.
но компилятор не понимает ty:
Почему?
|
(Offline)
|
|
05.03.2009, 13:12
|
#6
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Ответ: Что у меня неверно?
В MP нету меток, там много чего нет, что есть в паскале.
Советую просто прочитать помощь - абсолютно все стандартные функции и возможности там описаны, кое-что еще добавлено через библиотеки, но ограничений по сравнению с паскалем очень много.
|
(Offline)
|
|
05.03.2009, 14:58
|
#7
|
AnyKey`щик
Регистрация: 03.03.2009
Сообщений: 8
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Что у меня неверно?
Я читал. И мне кажется что именно там я про ГоТо и читал, но нем могу найти где
А как тогда по нажатию кнопки "Ок", мне вернутся в меню? и еще - как мне сделать прогресс-бар? или это тоже нельзя на мидлетпаскале? На мобайлбарсике видел, такое делают...
|
(Offline)
|
|
05.03.2009, 19:23
|
#8
|
Оператор ЭВМ
Регистрация: 27.01.2009
Сообщений: 21
Написано 2 полезных сообщений (для 2 пользователей)
|
Ответ: Что у меня неверно?
Тут нет ссылок, эт не бейсик!
тут ф-и и процедуры)))
|
(Offline)
|
|
05.03.2009, 19:47
|
#9
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Ответ: Что у меня неверно?
Сообщение от 7ion.
Я читал. И мне кажется что именно там я про ГоТо и читал, но нем могу найти где
А как тогда по нажатию кнопки "Ок", мне вернутся в меню? и еще - как мне сделать прогресс-бар? или это тоже нельзя на мидлетпаскале? На мобайлбарсике видел, такое делают...
|
Goto в MP нет точно.
Возвращение можно организовать с помощью циклов и условий.
Прогрессбар есть в режиме формы, назывется Gauge, добавляется с помощью FormAddGauge, позиция меняется с помощью FormSetValue.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
06.03.2009, 01:38
|
#10
|
AnyKey`щик
Регистрация: 03.03.2009
Сообщений: 8
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Что у меня неверно?
вах. ну это градусник как бы. а на графическом экране, как в МБ, нельзя его сделать? как загрузка там всякая. а то тогда получается что МП оч урезан
|
(Offline)
|
|
07.03.2009, 02:17
|
#11
|
Мастер
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений (для 713 пользователей)
|
Ответ: Что у меня неверно?
Вот простейшая процедура рисования полоски прогресса.
Полоска рисуется внизу экрана. При n = 0 рисуется рамка вокруг полоски, последующие значения - проценты выполнения. Пример взят из исходного кода SHD.
procedure OnLoad(n: integer); begin if n=0 then begin SetColor(0,0,0); FillRect(1,GetHeight-7,GetWidth-2,6); SetColor(192,192,192); DrawRect(1,GetHeight-7,GetWidth-3,5); Repaint; end; else begin FillRect(3,GetHeight-5,(GetWidth-5)*n/100,2); Repaint; end; end;
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
07.03.2009, 03:12
|
#12
|
AnyKey`щик
Регистрация: 03.03.2009
Сообщений: 8
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Что у меня неверно?
Спасибище огромное! Вопросов больше нет. Пока нет
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Похожие темы
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
Меня ещё не забыли? |
Raiter |
Болтовня |
9 |
23.12.2009 21:56 |
У меня спёрли асю. |
ABTOMAT |
Болтовня |
35 |
19.09.2009 14:39 |
Меня :) |
Raiter |
Поздравления и пожелания |
12 |
27.12.2007 10:26 |
Меня |
Raiter |
Поздравления и пожелания |
9 |
01.09.2007 00:07 |
меня.... |
Raiter |
Поздравления и пожелания |
6 |
12.12.2006 17:54 |
Часовой пояс GMT +4, время: 09:26.
|