02 - Oefening: Tekstveldgedrag
In deze oefening onderzoek je het effect van Can Grow, Can Shrink en Shift Mode op een rapport met variabele data. Je gaat bewust dingen “stuk” maken zodat je het gedrag leert herkennen.
Voorbereiding
- Open de designer via een bestaand rapport met een databand (bijvoorbeeld de pakbon uit de vorige oefening)
- Zorg dat er een tekstvak in de databand staat met een veldverwijzing naar een omschrijvingsveld
Deel 1 — Can Grow ontdekken
- Selecteer het tekstvak met de omschrijving in de databand
- Maak het tekstvak bewust smal (bijvoorbeeld 4 cm breed) en laag (0,5 cm hoog)
- Ga naar Afdrukvoorbeeld — wat gebeurt er met lange omschrijvingen?
- Ga terug naar de designer, selecteer het tekstvak en zet Can Grow op
True - Bekijk opnieuw het afdrukvoorbeeld — wat is het verschil?
Verwacht resultaat: zonder Can Grow wordt de tekst afgesneden. Met Can Grow groeit het tekstvak mee en toont alle tekst.
Deel 2 — Shift Mode testen
- Voeg onder het omschrijvingsveld een tweede tekstvak toe in dezelfde databand (bijvoorbeeld met de tekst “—” als visuele scheiding)
- Bekijk het afdrukvoorbeeld — overlappen de twee tekstvakken bij lange omschrijvingen?
- Selecteer het onderste tekstvak en stel Shift Mode in op
IncreasingSize - Bekijk opnieuw het afdrukvoorbeeld — schuift het onderste tekstvak nu netjes mee?
Verwacht resultaat: zonder Shift Mode overlappen de componenten. Met IncreasingSize schuift het onderste element mee naar beneden.
Deel 3 — Can Shrink testen
- Voeg boven de databand (in de ReportTitle) drie tekstvakken onder elkaar:
{Order.Klant.Bedrijf}{Order.Klant.Straat}{Order.Klant.Postcode} {Order.Klant.Plaats}
- Bekijk het afdrukvoorbeeld met een klant die geen bedrijfsnaam heeft — er verschijnt een lege regel
- Selecteer het bedrijfsnaam-tekstvak en zet Can Shrink op
True - Stel bij het straat-tekstvak Shift Mode in op
DecreasingSize - Bekijk opnieuw het afdrukvoorbeeld — is de lege regel verdwenen?
Verwacht resultaat: het lege bedrijfsnaamvak krimpt weg en het straatveld schuift omhoog.
Controlevragen
Vraag 1
Wat gebeurt er als je Can Grow aanzet maar Word Wrap uit laat staan?
Details
Antwoord: Er gebeurt niets — de tekst loopt niet door naar de volgende regel, dus het tekstvak groeit niet. De tekst wordt aan de rechterkant afgesneden. Can Grow heeft alleen effect als de tekst ook daadwerkelijk naar meerdere regels wordt afgebroken — en daarvoor is Word Wrap nodig. Zet dus altijd Word Wrap aan als je Can Grow wilt gebruiken.
Vraag 2
Waarom moet je Shift Mode instellen op het onderliggende component en niet op het component dat groeit?
Details
Antwoord: Het component dat groeit weet niet welke andere componenten er onder staan. Shift Mode is een eigenschap die zegt “ik wil meeschuiven als het component boven mij van grootte verandert.” Het is de verantwoordelijkheid van het onderliggende component om te reageren op veranderingen erboven.
Vraag 3
In welke situatie zou je Can Grow én Can Shrink tegelijk aanzetten op hetzelfde tekstvak?
Details
Antwoord: Bij een veld met sterk variabele lengte, zoals een opmerkingenveld. Soms bevat het 5 regels tekst (Can Grow nodig), soms is het helemaal leeg (Can Shrink voorkomt een lege ruimte). De combinatie zorgt dat het tekstvak zich altijd aanpast aan de werkelijke inhoud.
Wat heb je geleerd?
- Can Grow voorkomt afgesneden tekst bij variabele inhoud
- Shift Mode is noodzakelijk om overlapping te voorkomen
- Can Shrink elimineert lege witruimte bij ontbrekende waarden
- Deze drie eigenschappen werk je altijd samen af: groei → verschuiving → krimp