Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для мобильных телефонов > MidletPascal > Основной форум

Основной форум Сюда все проблемы связанные с программированием.

Ответ
 
Опции темы
Старый 14.08.2007, 01:36   #1
BASSON XVI
Нуждающийся
 
Регистрация: 04.06.2007
Сообщений: 87
Написано 0 полезных сообщений
(для 0 пользователей)
Злость Альтернативный экран ввода текста на Моторолах!!!

Народ ктонить может деал уже библу такую??? Короче на моторе просто в текст боксе писать нельзя там вылазит станартный ввод текста который сильно тормазит!!! Так вот собсно в чем вопрос ещё не кто не делал библу для алтернативного ввода и чтения текста! Если нет, то есть желающие на пару со мной взяться деалать такую???
(Offline)
 
Ответить с цитированием
Старый 14.08.2007, 19:26   #2
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Re: Альтернативный экран ввода текста на Моторолах!!!

На счет либ не знаю, но есть у меня один мидлет. Там ввод сделан "под Windows" . Поковыряй декомпилятором, может поможет.
(Offline)
 
Ответить с цитированием
Старый 14.08.2007, 20:26   #3
BASSON XVI
Нуждающийся
 
Регистрация: 04.06.2007
Сообщений: 87
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Альтернативный экран ввода текста на Моторолах!!!

ты понимаеш Я в явке пока не бум бум!!! Книгу нормальную не могу найти!!! Ну я подумаю!! А ты бы не хотел составить мне компанию в этом не лёгком деле???
(Offline)
 
Ответить с цитированием
Старый 14.08.2007, 21:24   #4
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Re: Альтернативный экран ввода текста на Моторолах!!!

Да я в общем-то тоже, в основном на Delphi пишу, яву знаю полхо.
(Offline)
 
Ответить с цитированием
Старый 14.08.2007, 22:58   #5
BASSON XVI
Нуждающийся
 
Регистрация: 04.06.2007
Сообщений: 87
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Альтернативный экран ввода текста на Моторолах!!!

Понятно!!! Значит будем ждать может PILIgrim подсобит!!
(Offline)
 
Ответить с цитированием
Старый 14.08.2007, 23:42   #6
MotoMustanger
Нуждающийся
 
Регистрация: 13.11.2006
Сообщений: 60
Написано одно полезное сообщение
Re: Альтернативный экран ввода текста на Моторолах!!!

Такое можно и без либы написать. Правда времени займет много.
(Offline)
 
Ответить с цитированием
Старый 15.08.2007, 00:24   #7
BASSON XVI
Нуждающийся
 
Регистрация: 04.06.2007
Сообщений: 87
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Альтернативный экран ввода текста на Моторолах!!!

Н тогда намекни как это сделать!! Я сам не могу додуматься!!!
(Offline)
 
Ответить с цитированием
Старый 15.08.2007, 16:16   #8
MotoMustanger
Нуждающийся
 
Регистрация: 13.11.2006
Сообщений: 60
Написано одно полезное сообщение
Re: Альтернативный экран ввода текста на Моторолах!!!

Тебе надо написать canvas textbox. Если поменьше писать, то есть где-то тут на форуме либа CRT, которая выводит строку и автоматически переносит на следующую, если она длиннее экрана(как в обычном Turbo Pascal). Её я не нашел поиском, но где-то видел. А ещё среди библиотек Pilgrima есть либа >>Custom Fonts<<, так она тоже выводит, но уже маленьким рисованным шрифтом (процедурой OutLongStr вроде ). Но это только вывод текста, еще надо написать чтобы прога печатала текст при нажатии клавиш(например клавиша 2 - А,Б,В,Г,2 с каждым последующим нажатием; 3 - Д,Е,Ё,Ж,З,3 и.т.д). Вобщем, работы много.
(Offline)
 
Ответить с цитированием
Старый 15.08.2007, 16:53   #9
BASSON XVI
Нуждающийся
 
Регистрация: 04.06.2007
Сообщений: 87
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Альтернативный экран ввода текста на Моторолах!!!

В курсах что много! Есть у меня приложенице написанное на ЯВА!! ТАм реализован ввод текста!!! Может сюда кинуть кто разбираеться покапаеться в нем и напишет либу!! Если что я подсоблю!!!
И ещё есть ли либы спмощью которых можно ловить повтороне и 3 нажаитие кнопки и подставлять буковки!!!! И ли это осуществимо самим МП и стандартными функциями!
(Offline)
 
Ответить с цитированием
Старый 15.08.2007, 17:20   #10
MotoMustanger
Нуждающийся
 
Регистрация: 13.11.2006
Сообщений: 60
Написано одно полезное сообщение
Re: Альтернативный экран ввода текста на Моторолах!!!

Сообщение от BASSON XVI
В курсах что много! Есть у меня приложенице написанное на ЯВА!! ТАм реализован ввод текста!!! Может сюда кинуть кто разбираеться покапаеться в нем и напишет либу!!
Я в этом не шарю.
Сообщение от BASSON XVI
И ещё есть ли либы спмощью которых можно ловить повтороне и 3 нажаитие кнопки и подставлять буковки!!!! И ли это осуществимо самим МП и стандартными функциями!
Не видел таких. Думаю это осуществимо самим паскалем. Да и вобще всю прогу можно было на нем написать, но для уменьшения потраченого времени лучше использовать библиотеки.
(Offline)
 
Ответить с цитированием
Старый 15.08.2007, 19:33   #11
BASSON XVI
Нуждающийся
 
Регистрация: 04.06.2007
Сообщений: 87
Написано 0 полезных сообщений
(для 0 пользователей)
Сообщение

знаю есть била или ещё что мне кото-то говорил !!! Моно спомошью ёе коды кнопок вычислять!!!
Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 5 сообщение(ий)):
У вас нет прав, чтобы видеть скрытый текст, содержащийся здесь.


вот написал не весть что не работает!!! А хотелось что б работало!!! Посмотрите !!!
program Canwas;
uses CRT;
var
  s2, keyaction, tecla : integer;
  buf3, s1  : string; 
  tscreen : string;
  clicked : integer;
//-------------------------------------------------------
begin 

buf3 := 'My name is Denis!! ';
tscreen := buf3;
write(tscreen);
tecla := GetKeyPressed;
if tecla = ke_key1 then begin s2:=1; s1:=IntegertoString(s2); write(s1); end;
if tecla = ke_key2 then begin s2:=2; s1:=IntegertoString(s2); write(s1); end;
if tecla = ke_key3 then begin s2:=3; s1:=IntegertoString(s2); write(s1); end;
if tecla = ke_key4 then begin s2:=4; s1:=IntegertoString(s2); write(s1); end;
if tecla = ke_key5 then begin s2:=5; s1:=IntegertoString(s2); write(s1); end;
if tecla = ke_key6 then begin s2:=6; s1:=IntegertoString(s2); write(s1); end;
if tecla = ke_key7 then begin s2:=7; s1:=IntegertoString(s2); write(s1); end;
if tecla = ke_key8 then begin s2:=8; s1:=IntegertoString(s2); write(s1); end;
if tecla = ke_key9 then begin s2:=9; s1:=IntegertoString(s2); write(s1); end;
repeat 
   keyaction:= keyToAction(getKeypressed);
until keyaction<>GA_NONE;
if (keyToAction(GetKeyPressed)=GA_FIRE) then halt; 
delay(900000);
end.
А вот сама библа CRT
 
unit CRT;
// эмуляция текстового дисплея
interface
var
 Wrap : boolean; // признак переноса слов при достижении правого края экрана
 MaxLine : integer; // количество строк
 
procedure ClrScr; // оистка экрана
procedure SetBkColor(R,G,B : integer); // устанавливает цвет фона всего экрана
procedure SetFontColor(R,G,B : integer);// устанавливает цвет текста на всем экране
procedure write(s : string); // аналог write 
procedure writeln(s : string); // аналог writeln
procedure waitkey(Key : integer) ; // ожидает нажатия на указанную кнопку
procedure waitanykey; // ожидает нажатия на любую кнопку
procedure InitCRT; // инициализация системы вывода (надо вызывать после изменения размера шрифта
implementation
type
 ColorRec = record
 R,G,B : integer;
 end;
 
var
 Screen : array[0..99] of string; // виртуальные строки дисплея
 CurLine : integer; // текущая строка
 CurX : integer; // текущая позиция в строке
 BkColor : ColorRec;
 FColor : ColorRec;
 LineH : integer; // высота строки
 
procedure SetC(C : ColorRec);
begin
 SetColor(C.R, C.G, C.B);
end;
procedure ClearScreen;
var
 i : integer;
begin
 for i := 0 to MaxLine do Screen[i] := '';
end;
 
procedure RedrawScreen; // отрисовка всего текста
var
 i, y : integer;
begin
 SetC(BkColor);
 fillrect(0,0,GetWidth, GetHeight);
 SetC(FColor);
 y := 0;
 for i := 0 to CurLine do begin
  DrawText(Screen[i],0,y);
  y := y + LineH;
 end;
 repaint;
end;
 
procedure ClrScr; // оистка экрана
begin
 CurLine := 0;
 CurX := 0;
 ClearScreen;
 RedrawScreen;
end;
procedure SetBkColor(R,G,B : integer); // устанавливает цвет фона
begin
 BkColor.R := R;
 BkColor.G := G;
 BkColor.B := B;
end;
procedure SetFontColor(R,G,B : integer);// устанавливает цвет текста
begin
 FColor.R := R;
 FColor.G := G;
 FColor.B := B;
end;
procedure ScrollUp;
var
 i : integer;
begin
 for i := 1 to MaxLine do Screen[i-1] := Screen[i];
 Screen[MaxLine] := '';
 CurLine := MaxLine;
end;
procedure NextLine;
begin
 CurLine := CurLine + 1;
 if CurLine > MaxLine then ScrollUp;
 CurX := 0;
end;
procedure AddLine(s : string);
begin
 Screen[CurLine] := Screen[CurLine] + s;
 CurX := GetStringWidth(Screen[CurLine]);
end;
function GetToken(s : string; num : integer): string; // возвращает слово номер num из строки
var
 s1 : string;
 ch : char;
 i : integer;
begin
 ch := getChar(s,num);
 if ch = chr(0)
  then s1 := ''
  else s1 := ''+ch;
 GetToken := s1;
end;
procedure write(s : string); // аналог write 
var
 s1,s2, s3 : string;
 i : integer;
 lsp : integer;
 done : boolean;
begin
 if Wrap then begin // если включен перенос
  while s <> '' do begin
   s1 := '';
   i := 0;
   repeat
    s3 := GetToken(s,i);
    s1 := s1 + s3;
    i := i + 1;
    s2 := copy(s,i,length(s));
   until ((GetStringWidth(s1)+CurX) > GetWidth) or (s2 = '') or (s1 = '');
   if s2 <> '' then begin
    i := i -1;
    s1 := copy(s1,0,length(s1)-1);
    s2 := copy(s,i,length(s));
   end;
   AddLine(s1);
   if s2 <> '' then NextLine;
   s := s2;
  end;
 end
 else AddLine(s); // если перенос выключен
 RedrawScreen; // выводим все
end;
procedure writeln(s : string); // аналог writeln
begin
 write(s);
 NextLine;
end;
procedure waitkey(Key : integer) ; // ожидает нажатия на указанную кнопку
begin
 repeat
  delay(100);
 until GetKeyPressed = Key;
end;
procedure waitanykey; // ожидает нажатия на любую кнопку
begin
 repeat
  delay(100);
 until GetKeyPressed <> KE_NONE;
end;
procedure InitCRT;
begin
 LineH := GetStringHeight('S');
 MaxLine := GetHeight / LineH;
 if MaxLine > 100 then MaxLine := 100;
 if MaxLine < 0 then MaxLine := 1;
 MaxLine := MaxLine - 1;
 Clrscr;
 SetBkColor(255,255,255);
 SetFontColor(0,0,0);
end;
initialization
 Wrap := true;
 InitCRT;
end.
(Offline)
 
Ответить с цитированием
Старый 16.08.2007, 12:48   #12
MotoMustanger
Нуждающийся
 
Регистрация: 13.11.2006
Сообщений: 60
Написано одно полезное сообщение
Re: Альтернативный экран ввода текста на Моторолах!!!

Вот держи полностью переделанная прога с вмонтированной либой crt. Выводит буквы и цифры.
(Offline)
 
Ответить с цитированием
Старый 16.08.2007, 12:57   #13
BASSON XVI
Нуждающийся
 
Регистрация: 04.06.2007
Сообщений: 87
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Альтернативный экран ввода текста на Моторолах!!!

Теперь бы ещё сделать что бы вводилось а не только выводилось!! ХАХА
(Offline)
 
Ответить с цитированием
Старый 16.08.2007, 13:00   #14
MotoMustanger
Нуждающийся
 
Регистрация: 13.11.2006
Сообщений: 60
Написано одно полезное сообщение
Re: Альтернативный экран ввода текста на Моторолах!!!

Сообщение от BASSON XVI
Теперь бы ещё сделать что бы вводилось а не только выводилось!! ХАХА
Что ты имеешь ввиду? В проге, выложенной выше, текст вводится с клавиатуры в canvas режиме и выводится на экран, только набор символов меньше.
(Offline)
 
Ответить с цитированием
Старый 16.08.2007, 16:19   #15
BASSON XVI
Нуждающийся
 
Регистрация: 04.06.2007
Сообщений: 87
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Альтернативный экран ввода текста на Моторолах!!!

Можете дать простенкий пример на содание ресурсового файла!!! А то я не бум бум !! Сне надо чтобы в с него считало и ввыдоло данные в string! В основной код!!
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Строка ввода is.SarCasm Blitz3D 0 15.10.2009 19:54
Функция ввода GomZik Blitz3D 3 03.05.2008 19:44
Альтернативный браузер. Chip Основной форум 7 15.02.2007 23:53
Форма для ввода не целых чисел founder Основной форум 1 22.10.2006 01:19
Экран в гиф... SubZer0 Болтовня 12 16.05.2006 01:26


Часовой пояс GMT +4, время: 16:03.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com