/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
Tastetryk i JAVA - hvordan implementerer j~
Fra : Iben Fasterholdt


Dato : 03-03-05 03:32

Hej Gruppe

Jeg vil gerne kunne trykke på "any key" (dvs en vilkårlig tast) i et
tekstbaseret javaprogram og så fortsætter den med at eksekvere næste
kodelinie. Kan kun få det til at virke med at trykke return. Er der en
løsning?

Mvh. Iben



 
 
Frederik Hansen (03-03-2005)
Kommentar
Fra : Frederik Hansen


Dato : 03-03-05 07:32

Iben Fasterholdt wrote:
> Hej Gruppe
>
> Jeg vil gerne kunne trykke på "any key" (dvs en vilkårlig tast) i et

Åh, det er det "any key" betyder.. Sorry, kunne ikke dy mig..

Hvordan gør du i dag? Jeg gætter på at kan bruge System.in.read() istedet.

Venlig hilsen
Frederik

Iben Fasterholdt (03-03-2005)
Kommentar
Fra : Iben Fasterholdt


Dato : 03-03-05 13:05

Har prøvet System.in.read() men den virker ikke, da den netop først går
videre når man trykker på returntasten.

Jeg har det her "spil" hvor man hele tiden skal vælge enten D eller C på
tastaturet og så skal den helst gå videre til næste runde i spillet, med det
samme uden at skulle trykke på return hver gang.

"Frederik Hansen" <fhansen@nospam-filter.com> wrote in message
news:4226af4b$1@news.wineasy.se...
> Iben Fasterholdt wrote:
>> Hej Gruppe
>>
>> Jeg vil gerne kunne trykke på "any key" (dvs en vilkårlig tast) i et
>
> Åh, det er det "any key" betyder.. Sorry, kunne ikke dy mig..
>
> Hvordan gør du i dag? Jeg gætter på at kan bruge System.in.read() istedet.
>
> Venlig hilsen
> Frederik



Peter Kjellerup Rasm~ (03-03-2005)
Kommentar
Fra : Peter Kjellerup Rasm~


Dato : 03-03-05 12:40

Iben Fasterholdt wrote:
> Har prøvet System.in.read() men den virker ikke, da den netop først
> går videre når man trykker på returntasten.
Måske noget med en BufferedReader i retning af :

BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
// Check om der er input
// check input
// gør ting baseret på input
// loop igen eller terminate

mvh
Peter

Iben Fasterholdt (03-03-2005)
Kommentar
Fra : Iben Fasterholdt


Dato : 03-03-05 17:22

Nu har jeg prøvet det og det virker desværre heller ikke. Også her skal man
taste "return" før den går videre og eksekverer næste kodelinie

Men tak for forslaget.

"Peter Kjellerup Rasmussen" <pkr@daimi.au.ak> wrote in message
news:d06t34$1glk$1@news.cybercity.dk...
Iben Fasterholdt wrote:
> Har prøvet System.in.read() men den virker ikke, da den netop først
> går videre når man trykker på returntasten.
Måske noget med en BufferedReader i retning af :

BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
// Check om der er input
// check input
// gør ting baseret på input
// loop igen eller terminate

mvh
Peter



Michael Rasmussen (03-03-2005)
Kommentar
Fra : Michael Rasmussen


Dato : 03-03-05 16:35

On Thu, 03 Mar 2005 16:21:35 +0000, Iben Fasterholdt wrote:

> Nu har jeg prøvet det og det virker desværre heller ikke. Også her skal
> man taste "return" før den går videre og eksekverer næste kodelinie
>
Måske noget i denne stil:
/**
* @param aFile is an existing file which can be read.
*/
public void readWithoutBuffer(File aFile) {
//declared here only to make visible to finally clause
Reader input = null;
try {
//do not use buffering
//this implementation reads one byte at a time
input = new FileReader( aFile );
int data = 0;
while ((data = input.read()) != -1){
//do nothing
}
}
catch (FileNotFoundException ex) {
ex.printStackTrace();
}
catch (IOException ex){
ex.printStackTrace();
}
finally {
try {
if (input!= null) {
input.close();
}
}
catch (IOException ex) {
ex.printStackTrace();
}
}
}

PS. Skriv venligst under det du svarer på. Det gør det nemmere at følge
debatten.

--
Hilsen/Regards
Michael Rasmussen
http://keyserver.veridis.com:11371/pks/lookup?op=get&search=0xE3E80917


Iben Fasterholdt (03-03-2005)
Kommentar
Fra : Iben Fasterholdt


Dato : 03-03-05 18:26


"Michael Rasmussen" <mir@miras.org> wrote in message
news:pan.2005.03.03.15.34.59.797739@miras.org...
> On Thu, 03 Mar 2005 16:21:35 +0000, Iben Fasterholdt wrote:
>
>> Nu har jeg prøvet det og det virker desværre heller ikke. Også her skal
>> man taste "return" før den går videre og eksekverer næste kodelinie
>>
> Måske noget i denne stil:
> /**
> * @param aFile is an existing file which can be read.
> */
> public void readWithoutBuffer(File aFile) {
> //declared here only to make visible to finally clause
> Reader input = null;
> try {
> //do not use buffering
> //this implementation reads one byte at a time
> input = new FileReader( aFile );
> int data = 0;
> while ((data = input.read()) != -1){
> //do nothing
> }
> }
> catch (FileNotFoundException ex) {
> ex.printStackTrace();
> }
> catch (IOException ex){
> ex.printStackTrace();
> }
> finally {
> try {
> if (input!= null) {
> input.close();
> }
> }
> catch (IOException ex) {
> ex.printStackTrace();
> }
> }
> }
>
> PS. Skriv venligst under det du svarer på. Det gør det nemmere at følge
> debatten.
>
> --
> Hilsen/Regards
> Michael Rasmussen
> http://keyserver.veridis.com:11371/pks/lookup?op=get&search=0xE3E80917
>

Hej Michael

Det kunne jeg heller ikke få til at virke, computeren går ikke videre før
jeg har trykket return Men tak for forslaget.

Håber der kommer andre forslag, da det er ret vigtigt for mig. Det er til
mit Bachelor-projekt og ret vigtigt for brugerne af mit program. Forestil
Jer et spil hvor man skal skrive C eller D i hver omgang, alt efter om man
vil "cooperate" eller "defecte". Når der er mange runder er det ikke så fedt
at skulle trykke på først C eller D og så "return" i hver eneste runde.

Desuden skal jeg også bruge funktionen i starten af mit program til at gå
videre når man har læst "spillereglerne" på skærmen. Her gør det
selvfølgelig ikke så meget at man skal trykke på return, men det gør det i
det forrige problem.

-Iben-



Malte (03-03-2005)
Kommentar
Fra : Malte


Dato : 03-03-05 17:34

Iben Fasterholdt wrote:
> Nu har jeg prøvet det og det virker desværre heller ikke. Også her skal man
> taste "return" før den går videre og eksekverer næste kodelinie
>
> Men tak for forslaget.
>
> "Peter Kjellerup Rasmussen" <pkr@daimi.au.ak> wrote in message
> news:d06t34$1glk$1@news.cybercity.dk...
> Iben Fasterholdt wrote:
>
>>Har prøvet System.in.read() men den virker ikke, da den netop først
>>går videre når man trykker på returntasten.
>
> Måske noget med en BufferedReader i retning af :
>
> BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
> // Check om der er input
> // check input
> // gør ting baseret på input
> // loop igen eller terminate
>
> mvh
> Peter
>
>

Sjovt lille problem. Så vidt jeg har kunnet finde ud af, kan det ikke
lade sig gøre, uden at tweake systemet lidt: her er en ide, jeg fandt på
nettet:

Change System.in to a non-buffered stream connected to a TTY and put
that TTY into cbreak mode.

Iben Fasterholdt (03-03-2005)
Kommentar
Fra : Iben Fasterholdt


Dato : 03-03-05 18:45

"Malte" <forgetme@spam_here.nowhere.com> wrote in message
news:d07eb7$27kh$1@news.cybercity.dk...
> Iben Fasterholdt wrote:
>> Nu har jeg prøvet det og det virker desværre heller ikke. Også her skal
>> man taste "return" før den går videre og eksekverer næste kodelinie
>>
>> Men tak for forslaget.
>>
>> "Peter Kjellerup Rasmussen" <pkr@daimi.au.ak> wrote in message
>> news:d06t34$1glk$1@news.cybercity.dk...
>> Iben Fasterholdt wrote:
>>
>>>Har prøvet System.in.read() men den virker ikke, da den netop først
>>>går videre når man trykker på returntasten.
>>
>> Måske noget med en BufferedReader i retning af :
>>
>> BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
>> // Check om der er input
>> // check input
>> // gør ting baseret på input
>> // loop igen eller terminate
>>
>> mvh
>> Peter
>
> Sjovt lille problem. Så vidt jeg har kunnet finde ud af, kan det ikke lade
> sig gøre, uden at tweake systemet lidt: her er en ide, jeg fandt på
> nettet:
>
> Change System.in to a non-buffered stream connected to a TTY and put
> that TTY into cbreak mode.

Har du et link eller noget? Jeg ved ikke lige hvad det går ud på...



Malte (03-03-2005)
Kommentar
Fra : Malte


Dato : 03-03-05 18:39


>
>
> Har du et link eller noget? Jeg ved ikke lige hvad det går ud på...
>
>

Næh, jeg søgte lidt rundt på Google. Det lod mig tro på, at det ikke er
muligt, med mindre man er i AWT/Swing mode og har en listener.

Iben Fasterholdt (03-03-2005)
Kommentar
Fra : Iben Fasterholdt


Dato : 03-03-05 22:46

"Malte" <forgetme@spam_here.nowhere.com> wrote in message
news:d07i3m$2bsb$1@news.cybercity.dk...
>
>>
>>
>> Har du et link eller noget? Jeg ved ikke lige hvad det går ud på...
>>
>>
>
> Næh, jeg søgte lidt rundt på Google. Det lod mig tro på, at det ikke er
> muligt, med mindre man er i AWT/Swing mode og har en listener.

Det var deprimerende nyt.... Men nå jeg håber stadig der er andre der har en
god ide. Jeg er født optimist



Iben Fasterholdt (03-03-2005)
Kommentar
Fra : Iben Fasterholdt


Dato : 03-03-05 22:49

"Iben Fasterholdt" <test@hotmail.com> wrote in message
news:d07sir$rsg$1@news.net.uni-c.dk...
> "Malte" <forgetme@spam_here.nowhere.com> wrote in message
> news:d07i3m$2bsb$1@news.cybercity.dk...
>>
>>>
>>>
>>> Har du et link eller noget? Jeg ved ikke lige hvad det går ud på...
>>>
>>>
>>
>> Næh, jeg søgte lidt rundt på Google. Det lod mig tro på, at det ikke er
>> muligt, med mindre man er i AWT/Swing mode og har en listener.
>
> Det var deprimerende nyt.... Men nå jeg håber stadig der er andre der har
> en god ide. Jeg er født optimist

Jeg blev lige i tvivl, det der AWT/Swing er noget med grafisk brugerflade
ikke? Bare lige for at være sikker på det ikke er noget jeg kan bruge. Jeg
kender nemlig ikke til programmering af grafisk brugerflade og har ikke tid
til at lære det, desværre...



Jonas Starup (04-03-2005)
Kommentar
Fra : Jonas Starup


Dato : 04-03-05 00:03

"Iben Fasterholdt" <test@hotmail.com> wrote in message
news:d07so9$rt5$1@news.net.uni-c.dk...
> "Iben Fasterholdt" <test@hotmail.com> wrote in message
> news:d07sir$rsg$1@news.net.uni-c.dk...
>> "Malte" <forgetme@spam_here.nowhere.com> wrote in message
>> news:d07i3m$2bsb$1@news.cybercity.dk...
>>>
>>>>
>>>>
>>>> Har du et link eller noget? Jeg ved ikke lige hvad det går ud på...
>>>>

http://www.eksperten.dk/spm/57383
Der er et lille eksempel (cut&paste&compile), med keylisteners, hvor man kan
se hvilken knap der er trykket ned.

M.v.h.
Jonas



Iben Fasterholdt (04-03-2005)
Kommentar
Fra : Iben Fasterholdt


Dato : 04-03-05 01:22


"Jonas Starup" <mrstarup@vip.cybercity.dk> wrote in message
news:422797a3$0$203$edfadb0f@dread12.news.tele.dk...
> "Iben Fasterholdt" <test@hotmail.com> wrote in message
> news:d07so9$rt5$1@news.net.uni-c.dk...
>> "Iben Fasterholdt" <test@hotmail.com> wrote in message
>> news:d07sir$rsg$1@news.net.uni-c.dk...
>>> "Malte" <forgetme@spam_here.nowhere.com> wrote in message
>>> news:d07i3m$2bsb$1@news.cybercity.dk...
>>>>
>>>>>
>>>>>
>>>>> Har du et link eller noget? Jeg ved ikke lige hvad det går ud på...
>>>>>
>
> http://www.eksperten.dk/spm/57383
> Der er et lille eksempel (cut&paste&compile), med keylisteners, hvor man
> kan se hvilken knap der er trykket ned.
>
> M.v.h.
> Jonas
>
Det der med grafisk brugerflade har jeg desværre ikke styr på (eller tid til
at lære) så det er udelukket



Søg
Reklame
Statistik
Spørgsmål : 177458
Tips : 31962
Nyheder : 719565
Indlæg : 6408170
Brugere : 218881

Månedens bedste
Årets bedste
Sidste års bedste