Воскресенье
22.12.2024
04:14
Приветствую Вас Гость | RSS Главная | С++ - Форум | Регистрация | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
С++
EINДата: Вторник, 01.05.2007, 19:02 | Сообщение # 1
Доброволец
Группа: Проверенные
Сообщений: 2
Репутация: 0
Статус: Offline
Каким образом доделать виртуальную графическую клавиатуру в С++??
2 недели парюсь, чтото гдето не стыкуется...


Дорогу Зухелям!!!
 
zytharДата: Среда, 02.05.2007, 12:58 | Сообщение # 2
protected by MAFIA
Группа: злые_админы
Сообщений: 96
Репутация: 0
Статус: Offline
этт те на ЯваСкрипте. МОжет как то под С++ подстроишь?:))
Code
<script type="text/javascript" >
<!--
var tField,tImg;
try{tField=window.opener.document.addform.message;} catch(e){}
try{tImg=document.getElementById("keyb");} catch(e){}
var ie4=document.getElementById && document.all;
var ns6=document.getElementById && !document.all;
ru1=new Image();ru1.src="http://src.ucoz.ru/img/fr/ru1.png";
ru2=new Image();ru2.src="http://src.ucoz.ru/img/fr/ru2.png"; <p> aRu1=new Array(1105,49,50,51,52,53,54,55,56,57,48,45,61,  1081,1094,1091,1082,1077,1085,1075,1096,1097,1079,1093,1098,  1092,1099,1074,1072,1087,1088,1086,1083,1076,1078,1101,92,  60,1103,1095,1089,1084,1080,1090,1100,1073,1102,46,  64,36,8364,165,35,  32,  38,124,37,167,126 );
aRu2=new Array(1025,33,34,8470,59,37,58,63,42,40,41,95,43,  1049,1062,1059,1050,1045,1053,1043,1064,1065,1047,1061,1066,  1060,1067,1042,1040,1055,1056,1054,1051,1044,1046,1069,47,  62,1071,1063,1057,1052,1048,1058,1068,1041,1070,44,  169,174,8482,105,247,  32,  123,125,91,93,177 ); <p> function testcoord(x,y){
var id;
if(y>=0 && y<20 && x<280) id="link";
if(y>=0 && y<20 && x>=280) id="close";
if(y>=20 && y<40){if(x<260)id=(x-x%20)/20;if(x>=260)id="bs";}
if(y>=40 && y<60){if(x<30)id="tab";if(x>=30)id=13+(x-30-(x-30)%20)/20;if(x>=270)id="del";}
if(y>=60 && y<80){if(x<35)id="shift";if(x>=35)id=25+(x-35-(x-35)%20)/20;if(x>=275)id="enter";}
if(y>=80 && y<100){if(x<25)id="shift";if(x>=25)id=37+(x-25-(x-25)%20)/20;if(x>=245)id="shift";}
if(y>=100){if(x<100)id=48+(x-x%20)/20;if(x>=100)id=53;if(x>=200)id=54+(x-200-(x-200)%20)/20;}
return id;
}
function putie(cmd){
tField.focus();
var cs=window.opener.document.selection.createRange();
var i;
if(cmd=="close")window.close();
if(cmd=="bs"){if(cs.text=='')cs.moveStart('character',-1);cs.text='';}
if(cmd=="del"){if(cs.text=='')cs.moveEnd('character',1);cs.text='';cs.collapse(false);}
if(cmd=="enter"){if(tField.type!="textarea")return false;cs.text='\n';}
if(cmd=="shift"){i=tImg.src;if(i.search(/ru1.+/)!=-1)tImg.src=ru2.src;if(i.search(/ru2.+/)!=-1)tImg.src=ru1.src;}
if(cmd=="tab"){if(tField.type!="textarea")return false;cs.text='\t';}
if(!isNaN(cmd)){i=tImg.src;if(i.search(/ru1.+/)!=-1)cs.text=String.fromCharCode(aRu1[cmd]);if(i.search(/ru2.+/)!=-1)cs.text=String.fromCharCode(aRu2[cmd]);}
cs.select();focus();
return false;
}
function putns(cmd){
tField.focus();
var i;
if(cmd=="close")window.close();
if(cmd=="bs")tField.value=tField.value.slice(0,tField.value.length-1);
if(cmd=="del")tField.value=tField.value.slice(0,tField.value.length-1);
if(cmd=="enter"){if(tField.type!="textarea")return false;tField.value=tField.value+'\n';}
if(cmd=="shift"){i=tImg.src;if(i.search(/ru1.+/)!=-1)tImg.src=ru2.src;if(i.search(/ru2.+/)!=-1)tImg.src=ru1.src;}
if(cmd=="tab"){if(tField.type!="textarea")return false;tField.value=tField.value+'\t';}
if(!isNaN(cmd)){i=tImg.src;if(i.search(/ru1.+/)!=-1)tField.value=tField.value+String.fromCharCode(aRu1[cmd]);if(i.search(/ru2.+/)!=-1)tField.value=tField.value+String.fromCharCode(aRu2[cmd]);}
focus();
return false;
}
function mclick(e){
if(!tField || !tImg) return false;
var objId;
if(ie4) objId=window.event.srcElement.id;
if(ns6) objId=e.target.id;
if(objId!="keyb") return false;
if(ie4) {x=event.clientX-parseInt(tImg.style.left);y=event.clientY-parseInt(tImg.style.top);if(!(x>=0))x=event.offsetX;if(!(y>=0))y=event.offsetY;putie(testcoord(x,y));}
if(ns6) {x=e.clientX-parseInt(tImg.style.left);y=e.clientY-parseInt(tImg.style.top);if(!(x>=0))x=e.layerX;if(!(y>=0))y=e.layerY;putns(testcoord(x,y));}
return false;
}
document.onmousedown = mclick;
//-->
</script>

З.Ы. в ближайшее время найду исходники на С++.


protected by MAFIA.
MAFIA never dies.
Я бы изменил мир, но Бог не дает исходников...
огонек лазерного прицела : тонкий намек на твое превосходство.
 
EINДата: Среда, 02.05.2007, 13:10 | Сообщение # 3
Доброволец
Группа: Проверенные
Сообщений: 2
Репутация: 0
Статус: Offline
о!
то что надо biggrin
вот терь только разберусь с вводом цифр и всё.

Добавлено (02.05.2007, 13:10)
---------------------------------------------
Quote (DeviL)
ru1=new Image();ru1.src="http://src.ucoz.ru/img/fr/ru1.png";
ru2=new Image();ru2.src="http://src.ucoz.ru/img/fr/ru2.png"; <p> aRu1=new Array

вот токо зачем это???


Дорогу Зухелям!!!
 
zytharДата: Среда, 02.05.2007, 13:29 | Сообщение # 4
protected by MAFIA
Группа: злые_админы
Сообщений: 96
Репутация: 0
Статус: Offline
EIN, чесс говоря не зна.:) я просто взял сурс с сайта. как видишь у формы быстрого ответа сесть ссылка клавиатура. вот туда нажал потом нажал Вю сурс:)

protected by MAFIA.
MAFIA never dies.
Я бы изменил мир, но Бог не дает исходников...
огонек лазерного прицела : тонкий намек на твое превосходство.
 
AVTДата: Четверг, 03.05.2007, 14:40 | Сообщение # 5
Рыцарь темной луны
Группа: Модераторы
Сообщений: 21
Репутация: 0
Статус: Offline
Братан , мой тебе совет : Такие вещи пиши на Яве : Запускаеться долго , зато красиво и работает быстро , а если с графическим с++ проблемы переходи на Делфи : cамая простая и мощная визуальная прога!! wacko
 
ALEXuaДата: Пятница, 11.05.2007, 22:31 | Сообщение # 6
Доброволец
Группа: Юзеры
Сообщений: 19
Репутация: 0
Статус: Offline
С++ не для моего терпения оч долго учить.

Нет ничего не возможного
 
  • Страница 1 из 1
  • 1
Поиск:


Copyright KulX © 2007
ВНИМАНИЕ:Администрация не несет ответственности за публикуемые авторами материалы!
Хостинг от uCoz