|
Основной форум Сюда все проблемы связанные с программированием. |
04.07.2007, 01:44
|
#1
|
Нуждающийся
Регистрация: 04.06.2007
Сообщений: 87
Написано 0 полезных сообщений (для 0 пользователей)
|
Помогите чуть чуть с булеанами! и т.п!!
Здрасте! У меня тут такое дело! Пишу на Мидлет Паскале недавно! Куча вопросов! Подскажите пожайлуста!
Короче я прописываю булеаны!
Пишу procedure!
Но как мне назначить на софт клавиши переход с одной процедуры на другую? И как назначить выход тоже не знаю! Подскажите!
Пример:
program BASSON XVI;
var
ok,exit,menu : command;
Bulmenu:bolean;
procedure menu;
begin
{ }
ok := createCommand('OK', CM_OK, 1);
showForm;
addCommand(ok);
nameField := formAddTextField('Введите ваше имя', '', 20, TF_ANY);
end;
begin
{ }
menu := createCommand('MENU', CM_OK, 1);
exit := createCommand(‘EXIT’, CM_EXET, 0);
showForm;
addCommand(menu);
addCommand(exit);
repaint;
while getClickedCommand <> exit do //Это правлино из проги выйдет?
begin end;
//---- А как назначит на MENU переход на болеан Bulmenu не знаю!------
Спасибо заранее! И кто скажет поставлю +!
|
(Offline)
|
|
04.07.2007, 12:20
|
#2
|
ПроЭктировщик
Регистрация: 31.01.2007
Сообщений: 128
Написано 20 полезных сообщений (для 43 пользователей)
|
Re: Помогите чуть чуть с булеанами! и т.п!!
В справке описано как осуществляется переход. Какое отношение к этому имеют "булеаны" непонятно.
var
okCmd, clicked: command;
procedure tvoyaProcedura;
end;
begin
okCmd := createCommand('OK', CM_OK, 1);
addCommand(okCmd);
repeat
clicked := getClickedCommand;
until clicked <> emptyCommand;
if clicked = okCmd then tvoyaProcedura;
end.
|
(Offline)
|
|
04.07.2007, 15:38
|
#3
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Re: Помогите чуть чуть с булеанами! и т.п!!
Вообще MP софт-кнопки не детектирует, но можно определить код клавиши примерно так:
program keycode;
var i:integer;
begin
repeat
i:=getkeyclicked;
until key<>ke_none;
drawtext(integertostring(i),10,10);
repaint;
delay(10000);
end.
Пишешь, запускаешь, нажимаешь софт кнопку, записываешь код и пользуешься им вместо ke_key1 и тд. Кстати, форма нажатия кнопок не ловит.
Выход делается процедурой halt.
А насчет переходов, чета я не очень понял, напиши попонятнее.
|
(Offline)
|
|
04.07.2007, 16:14
|
#4
|
Нуждающийся
Регистрация: 04.06.2007
Сообщений: 87
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Помогите чуть чуть с булеанами! и т.п!!
мне надо что на конкретной кнопке на перемер на левом софне когда нажимаеш открывалось процедура меню а на правом открывалась процедура открыть! Я вот про что !
|
(Offline)
|
|
04.07.2007, 16:15
|
#5
|
Нуждающийся
Регистрация: 04.06.2007
Сообщений: 87
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Помогите чуть чуть с булеанами! и т.п!!
опс извени не до конца промотал код!!!!
|
(Offline)
|
|
04.07.2007, 16:49
|
#6
|
Нуждающийся
Регистрация: 04.06.2007
Сообщений: 87
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Помогите чуть чуть с булеанами! и т.п!!
Я ту протестил но почему не вызываеться процедура из процедуры! Это то как организовать!!
|
(Offline)
|
|
04.07.2007, 17:08
|
#7
|
ПроЭктировщик
Регистрация: 31.01.2007
Сообщений: 128
Написано 20 полезных сообщений (для 43 пользователей)
|
Re: Помогите чуть чуть с булеанами! и т.п!!
Что значит не вызывается?
procedure Proc1;
begin
//раз
end;
procedure Proc2;
begin
//два
Proc1;
end;
begin
Proc2;
end.
|
(Offline)
|
|
04.07.2007, 23:10
|
#8
|
Нуждающийся
Регистрация: 04.06.2007
Сообщений: 87
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Помогите чуть чуть с булеанами! и т.п!!
Вот накатал проблему не знаю даже в чом дело то! пока её не устраню далше продвинуться не смогу!!!
program Basson
var
ok, exit, menu, bac, clecked: command;
procedure 1
begin
menu := createCommnad('MENU', CM_OK, 0);
bac := createCommnad('EXIT', CM_BACK, 1);
addCommnad(menu);
addCommand(bac);
repaint;
repeat
clicked := getClickedCommand;
until clicked <> emptyCommand;
if clicked = menu then 2; // ВОТ ту то оно и пишет что нет таких параметров процедур
if clicked = exit then 3; // и переменных в чом дело то???? если их убираю ошибок нет !
end;
prosedure 2
begin
end;
procedure 3
begin
end;
begin
Ok := createCommand('Поехали', CM_OK, 0);
Exit := createCommand('Выход', CM_CANCEL, 1);
addCommand(ExitCmd);
addCommand(OkCmd);
repaint;
repeat
clicked := getClickedCommand;
until clicked <> emptyCommand;
if clicked = Ok then 1;
if clicked = exit then 3;
end.
Простите за ошибки если чтот то не так подправтепесал в попыхах!
|
(Offline)
|
|
05.07.2007, 00:29
|
#9
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Re: Помогите чуть чуть с булеанами! и т.п!!
Числа не могут быть именами процедур. Имя процедуры должно начинаться с латинского символа.
|
(Offline)
|
|
05.07.2007, 01:42
|
#10
|
ПроЭктировщик
Регистрация: 31.01.2007
Сообщений: 128
Написано 20 полезных сообщений (для 43 пользователей)
|
Re: Помогите чуть чуть с булеанами! и т.п!!
Да, имена надо изменить. После имени процедуры ставится точка с запятой.
И надо процедуры 2 и 3 писать перед 1. Или перед процедурой 1 написать
procedure 2; forward;
procedure 3; forward;
Все это написано в справке. По описанию ошибок можно найти.
|
(Offline)
|
|
05.07.2007, 08:16
|
#11
|
Нуждающийся
Регистрация: 04.06.2007
Сообщений: 87
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Помогите чуть чуть с булеанами! и т.п!!
Не у меня процедуры написанны нормально и сточками с запятой! Мне просто надо следующее!
procedure proc1;
begin
//возвращение в proc3
end;
procedure proc2;
begin
//возвращение в proc3
end;
procedure proc3;
begin
//переход на proc2 и proc3(это я уже знаю как делать)
//возвращение в proc1 при этом это форма для письма ShowTexBox и надо что бы,
//в ней текст не проподал при возвращении!
end;
procedure proc4;
begin
//здесь вызов proc4
end;
Вот что мне надо! Мне же нужно осуществить так сказать откат с проседуры proc3 на процедуру proc4! ВОт так! А в справке я не чего подобного не нашол или у меня справка другая свою выложите если можете!
|
(Offline)
|
|
05.07.2007, 16:26
|
#12
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Re: Помогите чуть чуть с булеанами! и т.п!!
Помоему как-то так компилится без глюков)
program test;
var a,b:boolean;
tbbuf:string;
procedure proc3;forward;
//!!! if a=b -проверка нужного условия!!!
procedure proc1;
begin
//возвращение в proc3
if a=b then
proc3;
end;
procedure proc2;
begin
//возвращение в proc3
if a=b then
proc3;
end;
procedure proc3;
begin
//переход на proc2 и proc3(это я уже знаю как делать)
if a=b then proc3;
if a<>b then proc2;
tbbuf:=gettextboxstring;//сохраняем текст и когда надо аосстанавлтваем
//возвращение в proc1 при этом это форма для письма ShowTexBox и надо что бы,
//в ней текст не проподал при возвращении!
proc1;
end;
procedure proc4;
begin
//здесь вызов proc4
if a=b then
proc4;
end;
begin
end.
|
(Offline)
|
|
05.07.2007, 23:28
|
#13
|
Нуждающийся
Регистрация: 04.06.2007
Сообщений: 87
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Помогите чуть чуть с булеанами! и т.п!!
ViNT я тебя уже наврное задрал! Но не понял я какое условие?
procedure proc3;forward;
//!!! if a=b -проверка нужного условия!!!
Плиз по пожробней чуть чуть напиши? До меня совсем туго доходит так как я знаю только Басик и то по школьной программе!
|
(Offline)
|
|
06.07.2007, 01:00
|
#14
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Re: Помогите чуть чуть с булеанами! и т.п!!
if a=b -это то условие, при котором производится переход(например
if key=ke_key0 then...).
|
(Offline)
|
|
06.07.2007, 02:33
|
#15
|
Нуждающийся
Регистрация: 04.06.2007
Сообщений: 87
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Помогите чуть чуть с булеанами! и т.п!!
Блин все равно не врубился!
if a=b -это то условие, при котором производится переход(например if key=ke_key0 then...). Так мне то какое условие надо указывать и что писать после then...
покажи пожайлуста на конкретном примере какомнибудь!
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 21:57.
|