Lege TEdits in ons programma
Lege TEdits in ons programma

TEdits in één keer leeg maken op het scherm

Stel je wil een simpel adressenbestand maken, dat werk je veel met invoervelden, beter bekend als de TEdits binnen Lazarus Free Pascal / Delphi, dan is het handig als de invoervelden leeg zijn als u wilt invoeren, hier leert u hoe dat kunt doen.

Natuurlijk kunnen we er voor kiezen elke TEdits met de hand leeg te maken, echter is dit vrij tijdrovend en ook niet echt professioneel, dus doen we het via een simpele, maar doeltreffende code.
Het enige wat we hiervoor moeten doen is de onderstaande voorbeeld te volgen, en we we hebben volledig geautomatiseerd.

TEdits leeg tonen op het scherm

Uitgaande dat u inderdaad een adressenbestand wilt aanmaken, dan hebben we een aantal TEdits nodig om de gegevens in te voeren.
Dus starten we Lazarus Free Pascal / Delphi op, en gaan naar Project -> Nieuw -> Applicatie -> OK.
Een compleet nieuw project wordt aangemaakt, en u ziet een compleet lege form voor u op het scherm.

Eerst kijken we wat we willen invoeren aan gegevens.
We hebben een naam, een straat met huisnummer, postcode, woonplaats, emailadres en telefoonnummer, komen we dus uit op 7 invoervelden.
We moeten dan dus op ons form 7 TEdits plaatsen, zodat we onze gewenste invoervelden hebben.

We plaatsen het zelfde aantal TLabels zodat we deze rond de TEdits kunnen plaatsen, deze TLabels gaan aangeven wat we in het betreffende veld dienen in te vullen.
Als we dit hebben gedaan, plaatsen we één knop op ons scherm, deze maakt alle velden straks leeg.
Het scherm kan er dus uitzien zoals het onderstaande plaatje.

TEdits leeg maken start scherm
TEdits leeg maken start scherm

Zoals je ziet hebben we in de invoervelden nog steeds de tekst Edit1 enzovoort staan, en dit willen we natuurlijk leeg hebben.
Nu kunnen we natuurlijk elke TEdit leeg maken, maar door een aantal regels code toe te voegen, kunnen we dat in één keer doen.
We dubbelklikken op onze TButton, en de editor wordt geopend, en zien het onderstaande op ons scherm verschijnen.

procedure TForm1.Button1Click(Sender: TObject);
begin

end;

Tussen de bovenstaande code plaatsen we de onderstaande code.
U kunt deze gewoon selecteren, en er een kopie van maken, en plakken in uw code.

procedure TForm1.Button1Click(Sender: TObject);
var
 i: integer;
begin
 for i := 0 to ComponentCount-1 do
   if(Components[i] is TEdit) then
    TEdit(Components[i]).Text := '';
end;

Uitleg van de code

Als we op de knop drukken, zullen alle TEdits worden leeg gemaakt, dit door de bovenstaande code, maar wat gebeurd er daadwerkelijk op de achtergrond.
We gaan de code even na lopen, zodat we ook begrijpen wat er allemaal gebeurd met onze code.

for i := 0 to ComponentCount-1 do
   if(Components[i] is TEdit) then

In de bovenstaande code gaat ComponentCount, het aantal componenten tellen, en daarmee worden alle componenten bedoeld.
Echter willen we alleen onze TEdits tellen, en dat gebeurd in de tweede regel, we wijzen TEdits toe aan de componentcount, de telling vindt dus alleen plaats op de TEdits.

TEdit(Components[i]).Text := '';

Als ons programma alle TEdits heeft gevonden, wordt de standaard tekst vervangen wat tussen de haakjes staat, in dit geval staat er dus niets, dus zijn deze geheel leeg.

Tijd om te testen

Natuurlijk willen we weten of ons programma werkt, druk hiervoor op F9 of ga naar Uitvoeren->Uitvoeren.
Lazarus Free Pascal / Delphi zal onze code compileren (omzetten naar een exe bestand), en deze vervolgens als een werkend programma tonen.
Klik op onze knop en zie wat er gebeurd, in een mum van tijd zijn alle TEdits leeg, en kunnen we beginnen met invoeren.

Lege TEdits in ons programma
Lege TEdits in ons programma

Natuurlijk kunnen we aan de TEdits meer functionaliteit toevoegen, echter is dit voor een latere mini cursus.
Het staat u vrij om dit natuurlijk zelf uit te proberen, in de comments kunt u uw code dan plaatsen.

Laat je mening achter