Class SimpleWindow


  • public class SimpleWindow
    extends java.lang.Object
    Ett ritfönster, ungefär som det som använts i "Objektorienterad programmering och Java".
    • Constructor Summary

      Constructors 
      Constructor Description
      SimpleWindow​(int width, int height, java.lang.String title)
      Skapar ett fönster och gör det synligt.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void clear()
      Raderar innehållet i fönstret.
      void close()
      Stänger fönstret tillfälligt.
      static void delay​(int ms)
      Väntar ms millisekunder.
      WindowControls getAdvancedControls()
      Hämtar avancerade kontroller för detta fönster.
      int getClickedX()
      Tar reda på x-koordinaten för muspekarens position vid senaste musklick.
      int getClickedY()
      Tar reda på y-koordinaten för muspekarens position vid senaste musklick.
      int getEventType()
      Tar reda på vilket slags händelse som inträffat (MOUSE_EVENT eller KEY_EVENT).
      int getHeight()
      Tar reda på fönstrets storlek i y-led.
      char getKey()
      Tar reda på vilken tangent som trycktes ned vid en KEY_EVENT-händelse.
      java.awt.Color getLineColor()
      Tar reda på linjefärgen.
      int getLineWidth()
      Tar reda på linjebredden.
      int getMouseX()
      Tar reda på x-koordinaten för musens position just nu.
      int getMouseY()
      Tar reda på y-koordinaten för musens position just nu.
      int getWidth()
      Tar reda på fönstrets storlek i x-led.
      int getX()
      Tar reda på x-koordinaten för pennans läge.
      int getY()
      Tar reda på y-koordinaten för pennans läge.
      void lineTo​(int x, int y)
      Flyttar pennan till punkten x,y och ritar samtidigt en rät linje.
      void moveTo​(int x, int y)
      Flyttar pennan till punkten x,y utan att rita.
      void open()
      Öppnar ett stängt fönster.
      void setLineColor​(java.awt.Color col)
      Sätter linjefärgen till col.
      void setLineWidth​(int thickness)
      Sätter linjebredden till thickness pixlar
      void waitForEvent()
      Väntar tills användaren antingen klickar på en musknapp eller trycker ned en tangent på tangentbordet.
      char waitForKey()
      Väntar tills användaren trycker ned en tangent på tangentbordet.
      void waitForMouseClick()
      Väntar tills användaren har klickat på en musknapp.
      void writeText​(java.lang.String txt)
      Skriver texten txt med början i pennans aktuella läge.
      • Methods inherited from class java.lang.Object

        clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • SimpleWindow

        public SimpleWindow​(int width,
                            int height,
                            java.lang.String title)
        Skapar ett fönster och gör det synligt.
        Parameters:
        width - fönstrets bredd (räknat i pixlar)
        height - fönstrets höjd (räknat i pixlar)
        title - fönstrets titel
    • Method Detail

      • getWidth

        public int getWidth()
        Tar reda på fönstrets storlek i x-led.
        Returns:
        fönstrets bredd
      • getHeight

        public int getHeight()
        Tar reda på fönstrets storlek i y-led.
        Returns:
        fönstrets höjd
      • clear

        public void clear()
        Raderar innehållet i fönstret.
      • close

        public void close()
        Stänger fönstret tillfälligt.
      • open

        public void open()
        Öppnar ett stängt fönster.
      • moveTo

        public void moveTo​(int x,
                           int y)
        Flyttar pennan till punkten x,y utan att rita.
        Parameters:
        x - x-koordinat för pennans nya position
        y - y-koordinat för pennans nya position
      • lineTo

        public void lineTo​(int x,
                           int y)
        Flyttar pennan till punkten x,y och ritar samtidigt en rät linje.
        Parameters:
        x - x-koordinat för pennans nya position
        y - y-koordinat för pennans nya position
      • setLineWidth

        public void setLineWidth​(int thickness)
        Sätter linjebredden till thickness pixlar
        Parameters:
        thickness - linjebredd (i pixlar, där 1 är normal bredd)
      • getLineWidth

        public int getLineWidth()
        Tar reda på linjebredden.
        Returns:
        linjebredden (i pixlar)
      • writeText

        public void writeText​(java.lang.String txt)
        Skriver texten txt med början i pennans aktuella läge. Pennans läge påverkas inte.
        Parameters:
        txt - texten som ska skrivas i fönstret
      • getX

        public int getX()
        Tar reda på x-koordinaten för pennans läge.
        Returns:
        pennans x-koordinat
      • getY

        public int getY()
        Tar reda på y-koordinaten för pennans läge.
        Returns:
        pennans y-koordinat
      • setLineColor

        public void setLineColor​(java.awt.Color col)
        Sätter linjefärgen till col. Det finns ett antal inbyggda färger, som Color.RED eller Color.MAGENTA. Man kan även skapa nya, egna färger:
         
           SimpleWindow w = new SimpleWindow(300, 300, "colordemo");
           w.setLineColor(Color.RED);
           w.moveTo(100, 100);
           w.lineTo(200, 100);                        // en röd linje
           
           Color mycolor = new Color(242, 128, 161);  // en helt egen färg
           w.setLineColor(mycolor);
           w.lineTo(200, 200);                        // en linje i denna färg
           ...
         
         
        Parameters:
        col - den nya linjefärgen
        See Also:
        dokumentation för java.awt.Color
      • getLineColor

        public java.awt.Color getLineColor()
        Tar reda på linjefärgen.
        Returns:
        linjefärg
      • getMouseX

        public int getMouseX()
        Tar reda på x-koordinaten för musens position just nu.
        Returns:
        muspekarens x-koordinat, relativt fönstret
      • getMouseY

        public int getMouseY()
        Tar reda på y-koordinaten för musens position just nu.
        Returns:
        muspekarens y-koordinat, relativt fönstret
      • waitForMouseClick

        public void waitForMouseClick()
        Väntar tills användaren har klickat på en musknapp.
      • getClickedX

        public int getClickedX()
        Tar reda på x-koordinaten för muspekarens position vid senaste musklick.
        Returns:
        klickets x-koordinat
      • getClickedY

        public int getClickedY()
        Tar reda på y-koordinaten för muspekarens position vid senaste musklick.
        Returns:
        klickets y-koordinat
      • waitForKey

        public char waitForKey()
        Väntar tills användaren trycker ned en tangent på tangentbordet.
        Returns:
        den tryckta tangenten
      • waitForEvent

        public void waitForEvent()
        Väntar tills användaren antingen klickar på en musknapp eller trycker ned en tangent på tangentbordet.
      • getEventType

        public int getEventType()
        Tar reda på vilket slags händelse som inträffat (MOUSE_EVENT eller KEY_EVENT).
        Returns:
        KEY_EVENT för tangenttryck, MOUSE_EVENT för musklick
      • getKey

        public char getKey()
        Tar reda på vilken tangent som trycktes ned vid en KEY_EVENT-händelse.
        Returns:
        teckenkoden för tangenten
      • delay

        public static void delay​(int ms)
        Väntar ms millisekunder.
        Parameters:
        ms - antalet millisekunder programmet ska pausa
      • getAdvancedControls

        public WindowControls getAdvancedControls()
        Hämtar avancerade kontroller för detta fönster.