mittBibliotek
Class JavabokGUI

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--java.awt.Window
                    |
                    +--java.awt.Frame
                          |
                          +--javax.swing.JFrame
                                |
                                +--mittBibliotek.JavabokGUI
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, mittBibliotek.Konstanter, java.awt.MenuContainer, javax.swing.RootPaneContainer, java.io.Serializable, javax.swing.WindowConstants

public class JavabokGUI
extends javax.swing.JFrame
implements mittBibliotek.Konstanter
 
 
See Also:
Serialized Form

Versjon: Oktober 2000. E.L. 

Klassen gjør det mulig å kommunisere med brukeren via et primitivt grafisk brukergrensesnitt. Et alternativ til tekstbasert kommunikasjon via konsollet.

Tastaturstøtten på trykknappene virker slik at knappen må ha fokus for at Enter-tasten skal kunne brukes. Bruk tabulatortasten for å skifte fokus.

Se også kapittel 3.3-3.5 i boka "Programmering i Java" av E. Lervik og V. B. Havdal.

Klassen inneholder et testprogram som kjøres på følgende måte fra kommandolinjen:

>java mittBibliotek/JavabokGUI  
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
JavabokGUI(java.lang.String tittel)
           
 
Method Summary
 boolean jaSvar(java.lang.String tittel, java.lang.String spørsmål)
          Metoden viser en meldingsboks med en ja-knapp og en nei-knapp.
 double lesDesimaltall(java.lang.String tittel, java.lang.String ledetekst)
          Metoden leser et desimalltall fra brukeren.
 int lesHeltall(java.lang.String tittel, java.lang.String ledetekst)
          Metoden leser et heltall fra brukeren.
 java.lang.String lesTekst(java.lang.String tittel, java.lang.String ledetekst)
          Metoden leser en linje tekst fra brukeren.
static void main(java.lang.String[] args)
           
 void settVisInndata(boolean visInndataVerdi)
          Metoden brukes til å slå av eller på logging av inndata.
 void skrivMelding(java.lang.String tittel, java.lang.String melding)
          Metoden skriver en tekst i en meldingsboks med en OK-knapp.
 void skrivResultater(java.lang.String tekst)
          Metoden skriver en tekst, etterfulgt av linjeskift, i utskriftvinduet.
 int velgFraEnkeltvalgListe(java.lang.String tittel, java.lang.String ledetekst, java.lang.String[] valg)
          Metoden presenterer en listeboks for brukeren.
 boolean[] velgFraFlervalgListe(java.lang.String tittel, java.lang.String ledetekst, java.lang.String[] valg)
          Metoden presenterer en listeboks for brukeren.
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isRootPaneCheckingEnabled, paramString, processKeyEvent, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Frame
addNotify, finalize, getCursorType, getFrames, getIconImage, getMenuBar, getState, getTitle, isResizable, remove, removeNotify, setCursor, setIconImage, setMenuBar, setResizable, setState, setTitle
 
Methods inherited from class java.awt.Window
addWindowListener, applyResourceBundle, applyResourceBundle, dispose, getFocusOwner, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getOwnedWindows, getOwner, getToolkit, getWarningString, hide, isShowing, pack, postEvent, processEvent, removeWindowListener, setCursor, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setFont, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, addPropertyChangeListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getInputMethodRequests, getLocation, getLocation, getLocationOnScreen, getName, getParent, getPeer, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isDisplayable, isDoubleBuffered, isEnabled, isFocusTraversable, isLightweight, isOpaque, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, processMouseMotionEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setDropTarget, setEnabled, setForeground, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Method Detail

settVisInndata

public void settVisInndata(boolean visInndataVerdi)
Metoden brukes til å slå av eller på logging av inndata. Dersom logging er på, vil alle inndata skrives i utskriftvinduet. Standard er at dette gjøres, men av og til blir dette så mye data, at vinduet fylles helt opp. Da kan det være aktuelt å slå av dette.
Parameters:
String - boolean visInndataVerdi

skrivMelding

public void skrivMelding(java.lang.String tittel,
                         java.lang.String melding)
Metoden skriver en tekst i en meldingsboks med en OK-knapp.
Parameters:
String - tittel, tittelen øverst i boksen
String - melding, teksten som skrives ut

lesTekst

public java.lang.String lesTekst(java.lang.String tittel,
                                 java.lang.String ledetekst)
Metoden leser en linje tekst fra brukeren.
Parameters:
String - tittel, tittelen øverst i dialogboksen
String - ledetekst
Returns:
Teksten som brukeren har skrevet inn.

lesHeltall

public int lesHeltall(java.lang.String tittel,
                      java.lang.String ledetekst)
Metoden leser et heltall fra brukeren. Dersom det brukeren skriver inn ikke kan tolkes som et heltall, skrives meldingen "Ugyldig heltall" i inputfeltet, og brukeren må skrive inn tallet på nytt.
Parameters:
String - tittel, tittelen øverst i dialogboksen
String - ledetekst
Returns:
Tallet som brukeren har skrevet inn.

lesDesimaltall

public double lesDesimaltall(java.lang.String tittel,
                             java.lang.String ledetekst)
Metoden leser et desimalltall fra brukeren. Dersom det brukeren skriver inn ikke kan tolkes som et desimaltall, skrives meldingen "Ugyldig desimaltall" i inputfeltet, og brukeren må skrive inn tallet på nytt.
Parameters:
String - tittel, tittelen øverst i dialogboksen
String - ledetekst
Returns:
Tallet som brukeren har skrevet inn.

jaSvar

public boolean jaSvar(java.lang.String tittel,
                      java.lang.String spørsmål)
Metoden viser en meldingsboks med en ja-knapp og en nei-knapp.
Parameters:
String - tittel, tittelen øverst i dialogboksen
String - spørsmål
Returns:
true dersom brukeren har trykket på ja-knappen, false ellers.

velgFraFlervalgListe

public boolean[] velgFraFlervalgListe(java.lang.String tittel,
                                      java.lang.String ledetekst,
                                      java.lang.String[] valg)
Metoden presenterer en listeboks for brukeren. Brukeren kan velge flere alternativer. Brukeren kan la være å velge noe i det hele tatt. Flere enkeltvalg gjøres ved å bruke CTRL+mus, intervaller velges ved å bruke SHIFT+mus. Eksempel på bruk:

String[] valg = {"Bergen", "Trondheim", "Oslo", "Ålesund", "Tromsø", "Arendal", "Hamar"};
boolean[] resultat = gui.velgFraFlervalgListe("Valg", "Velg flere byer:", valg);
Dersom brukeren har valgt Trondheim og Ålesund vil resultat[1] og resultat[3] ha verdien true, mens de øvrige elementene i tabellen resultat har verdien false.
Parameters:
String - tittel, tittelen øverst i dialogen
String - ledetekst, teksten over listeboksen
Returns:
String[] valg, de valgene som skal vises i listeboksen

velgFraEnkeltvalgListe

public int velgFraEnkeltvalgListe(java.lang.String tittel,
                                  java.lang.String ledetekst,
                                  java.lang.String[] valg)
Metoden presenterer en listeboks for brukeren. Brukeren må velge ett alternativ. Eksempel på bruk:

String[] valg = {"Bergen", "Trondheim", "Oslo", "Ålesund", "Tromsø", "Arendal", "Hamar"};
int valgIndeks = gui.velgFraEnkeltvalgListe("Valg", "Velg en by:", valg);
Dersom brukeren velger Trondheim vil valgIndeks ha verdien 1.
Parameters:
String - tittel, tittelen øverst i dialogen
String - ledetekst, teksten over listeboksen
Returns:
String[] valg, de valgene som skal vises i listeboksen

skrivResultater

public void skrivResultater(java.lang.String tekst)
Metoden skriver en tekst, etterfulgt av linjeskift, i utskriftvinduet.
Parameters:
String - tekst