Size and Placement of Windows

NOTA: Sinds het begin van Liberty BASIC v2.0 is de plaatsing van
vensters en dialoogboxen min of meer het zelfde gebleven.
De vorige versies hadden twee verschillende helpfile secties om te beschrijven
hoe het venster en de dialoogplaatsing werkten. De grootte en de plaatsing van
om het even welk venster kan worden ingesteld alvorens het venster wordt geopend.
Als geen grootte en plaatsingsverklaringen worden gespecificeerd vr het
OPEN statement van een venster, dan zal Liberty BASIC de standaardgrootte gebruiken.

Er zijn vier speciale variabelen die kunnen worden ingegeven
om de grootte en de plaats van vensters te selecteren

UpperLeftX UpperLeftY WindowWidth WindowHeight


De breedte en de hoogte van het beeldscherm kunnen met deze variabelen worden verkregen:

DisplayWidth DisplayHeight

De waarden die voor UpperLeftX en UpperLeftY worden gegeven bepalen
het aantal pixels vanaf de linker boven (upper-left) hoek van het scherm om het venster te plaatsen.
Vaak is bepalen van de afstand van de linker boven (upper-left) hoek van het scherm
niet zo belangrijk als het bepalen van de grootte van het venster.
Als de waarden UpperLeftX en UpperLeftY niet zijn gegeven,
dan zal het venster op een standaardplaats verschijnen die door Windows wordt bepaald.

WindowWidth en WindowHeight kunnen worden ingegeven en geven dan de gewenste
breedte en hoogte van het venster in pixels aan. Deze moeten wel
vr het OPEN statement van het venster worden geplaatst.
Zodra de grootte en de plaatsing van een venster zijn gegeven, kan het venster met een OPEN statement worden geopend.
Hier is een voorbeeld:


  [openStatus]

      UpperLeftX = 32
      UpperLeftY = 52
      WindowWidth = 190
      WindowHeight = 160

      	open "Status Window" for window as #stats
    	print "Screen width is ";DisplayWidth

    print "Screen height is ";DisplayHeight

Dit zal een venster 32 pixel van de linkerkant van het scherm en 52 pixel
vanaf de bovenkant van het beeldscherm, en met een breedte van 190 pixel, en een hoogte van 160 pixel openen.

 

De resolutie van het scherm is vervat in de speciale variabelen DisplayWidth en DisplayHeight.
Een het schermresolutie van 800x600 pixels keert met waarden van 800 en 600 respectievelijk
voor DisplayWidth en DisplayHeight terug. Het voorbeeld hieronder print de huidige schermresolutie:

    print "Screen width is ";DisplayWidth
    print "Screen height is ";DisplayHeight

DisplayWidth en DisplayHeight kunnen worden gebruikt om waarden
voor WindowWidth en WindowHeight te verwerken, zoals in deze voorbeelden:

    WindowWidth = DisplayWidth
    WindowHeight = DisplayHeight - 100

 

EXTRA
Omschrijving:

De speciale variabelen WindowWidth en WindowHeight specificeren de breedte en de hoogte
van het volgende te openen venster. Als de code van het programma
niet de waarden voor deze speciale variabelen specificeert,
zullen ze standaard 320 en respectievelijk 360 zijn.
Nadat een vormverandering (resize) die door het resizehandler commando wordt bemerkt,
bevatten deze variabelen de breedte en de hoogte van het clint gedeelte van het venster.
Het clint gedeelte is de werkruimte van het venster dat binnen het gewijzigde frame,
grens of titelbalk ligt. Zie resize.bas voor een voorbeeld van dit gebruik.

Gebruik:
Het volgende voorbeeld zal een grafisch venster 250 pixel wijd en 100 pixel hoog openen.
    WindowWidth = 250
    WindowHeight = 100
    open "test window" for graphics as #testHandle

    input r$


See also: UpperLeftX , UpperLeftY, Resizehandler