Readkey (help ) – Pascal – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Readkey (help ) – Pascal – Fórum – Programujte.comReadkey (help ) – Pascal – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
vcrabz0
Duch
24. 3. 2009   #1
-
0
-

ahoj, chtěl bych se zeptat jestli je možné pomocí funkce readkey načítat dvě klavesi postupně tj. nacte prvni, nejakej čas čeká a pokud vtento čas se stiskne druha klavesa tak províst operaci pro obě zmáčknutí pokud během času se druha klavesa nezmackne provist operaci pouze pro prvni zmacknuti.

z:=readkey;

IF z='a' then
begin
z:=readkey;
delay(200);
IF z='b' then provist akci;
end;

Nahlásit jako SPAM
IP: 84.42.150.–
Reklama
Reklama
Mircosoft+1
Věrný člen
25. 3. 2009   #2
-
0
-

Předpokládám, že myslíš něco takovéhohle:

klavesa1:=readkey;

klavesa2:=#0; {neco, co neni na klavesnici}
for i:=1 to 50 do
begin
delay(10);
if keypressed then begin
klavesa2:=readkey;
break;
end;
end;
if klavesa2<>#0 then {v tom casovem intervalu bylo neco zmacknuto, zpracuj obe klavesy}
else {nic zmacknuto nebylo, zpracuj jenom tu prvni};

kde klavesa1 a klavesa2 jsou proměnné typu char. Doba čekání na druhou klávesu je rovna součinu krátkého čekání v cyklu a počtu jeho opakování, lze samozřejmě změnit. Důležité je, že čekáš po malých kouscích a tím se vyhneš nebezpečí zahlcení bufferu klávesnice.


Kdybych to dělal v praxi, použil bych spíš svoji jednotku Čas (http://mircosoft.ic.cz/download/CAS.PAS) a vypadalo by to takhle:
klavesa1:=readkey;

klavesa2:=#0;
StartCekani;
repeat
if keypressed then begin
klavesa2:=readkey;
break;
end;
until DosazenCas(500);
StopCekani;
if klavesa2<>#0 then {neco bylo zmacknuto, zpracuj obe klavesy}
else {nic zmacknuto nebylo, zpracuj jenom tu prvni};

Ale to je věc vkusu ;-).

Nahlásit jako SPAM
IP: 86.49.83.–
Chceš-li lepší odpověď, polož lepší otázku.
Moje stránka.
vcrabz0
Duch
26. 3. 2009   #3
-
0
-

To Mircosoft : Díky tohle jsem přesně potřeboval :smile2:

Nahlásit jako SPAM
IP: 213.220.234.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 9 hostů

Podobná vlákna

Aplikace Helpdesk v php — založil Admin33

HELP_řetězec — založil Mitch

Helpdesk v php — založil Paja2

Helpnete s úkolem — založil Piskar10110010

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý