Een MDI-tekstverwerkingsapplicatie
Schrijf een MDI-applicatie waarmee tekstbestanden kunnen verwerkt
worden. Download het bestand Tekstverwerking.exe om de gevraagde functionaliteit uit te proberen.
Start Visual Studio 2008 op en kies voor een Windows Forms Application. Voeg hierna aan de solution explorer een MDI Parent Form
toe. Zoals je kunt zien is de layout van het toegevoegde ouderformulier op enkele details na identiek aan het gevraagde.
Bij de aanvang van het programma wordt een oudervenster getoond, dat een menubalk bevat met de menu's "Bestand","Bewerken",
"Beeld" en "Venster". Naast de menubalk bevat het oudervenster tevens een toolbar.
Het menu "Bestand" bevat de items "Nieuw", "Openen", een scheidingslijn, "Opslaan", "Opslaan Als...", een scheidingslijn,
"Afdrukken", "Afdrukvoorbeeld", een scheidingslijn en "Afsluiten".
- Met behulp van de menu-items "Nieuw" en "Openen" kunnen kindvensters toegevoegd worden. Indien de gebruiker op "Nieuw"
klikt, wordt er aan de MDI-applicatie een nieuw kindvenster toegevoegd dat enkel een leeg multiline tekstveld bevat, waarbij
het tekstveld het volledige kindvenster inpalmt.
De gebruiker kan ook een kindvenster toevoegen door op de knop
"Openen" te klikken. In dat geval wordt er eerst een bestandsopener aan de gebruiker getoond. Er is een filter voorzien
voor tekstbestanden (*.txt). Indien de gebruiker op "Openen" klikt, wordt het bestand geopend en komt de tekst uit dit bestand
in het tekstveld van het nieuwe kindvenster. Indien de gebruiker in de bestandsopener op "Annuleren" klikt, wordt er geen nieuw
kindvenster toegevoegd aan de MDI-applicatie.
- De gebruiker kan de inhoud van het tekstveld van een kindvenster steeds opslaan door op de knop "Opslaan als" te klikken.
In dat geval wordt er een bestandssaver aan de gebruiker getoond. In het tekstveld "Bestandsnaam" is (indien mogelijk) de
bestandsnaam voor het huidige kindvenster ingevuld. Het bestand wordt enkel gesaved indien de gebruiker op "Opslaan" klikt.
Indien aan het huidige, actieve kindvenster een bestandsnaam gekoppeld is (door het kindvenster te openen via "Openen"
of door het venster eerst al eens gesaved te hebben via "Opslaan als"), kan de gebruiker ook op het menu-item "Opslaan"
klikken, waardoor de inhoud van het tekstveld automatisch opgeslagen wordt in het desbetreffende bestand.
Let op dat de gebruiker enkel op "Bewaren als" en op "Bewaren" kan klikken indien er een kindvenster actief is.
- Een kindvenster kan gesloten worden door het oudervenster te sluiten of door het kindvenster te sluiten.
Indien echter aan het kindvenster een bestandsnaam gekoppeld is, en het bestand bevat nog niet de
laatste versie van de tekst in het tekstveld, dan wordt aan de gebruiker gevraagd of hij eerst nog de wijzigingen
wil opslaan in het bestand:
Indien de gebruiker op "Annuleren" klikt, wordt het kindvenster NIET gesloten.
Een druk op de knoppen "Ja" of "Nee" sluit het venster wel, waarbij de tekst uit het tekstveld
respectievelijk wel en niet opgeslagen worden.
Indien aan het kindvenster nog geen bestandsnaam gekoppeld is (doordat het een kindvenster is dat geopend
werd via het menu-item "Nieuw" en het kindvenster nog niet werd bewaard), en de inhoud van
het tekstveld is niet leeg, dan wordt tevens aan de gebruiker gevraagd
of hij eerst de tekst wil opslaan alvorens af te sluiten.
- De applicatie kan beëindigd worden door op "Afsluiten" te klikken.
Het menu "Bewerken" bevat de items "knippen", "kopiëren", plakken, een scheidingslijn, en "Alles selecteren".
- Het klikken op het item "knippen" heeft als gevolg dat de geselecteerde tekst op het klembord wordt geplaatst en
de selectie zelf uit de tekst wordt verwijderd.
- De functie "kopiëren" heeft nagenoeg dezelfde werking als "knippen" met dat verschil dat de geselecteerde tekst
niet wordt verwijderd. Zowel knippen als kopiëren is slechts mogelijk wanneer er tekst geselecteerd is!
- Met het menu-item "plakken" kan de gebruiker geknipte of gekopieerde tekst van het klembord halen en invoegen in
een tekstveld. Zolang het klembord gegevens bevat en er een kindvenster aanwezig is, moet deze functie aanklikbaar zijn.
- Bij het klikken op "Alles Selecteren" wordt de volledige tekst van het actieve kindvenster geselecteerd. Indien
er geen kindvenster is, is dit item niet aanklikbaar.
Het menu "Beeld" bevat één item, nl. toolbar waarmee de gebruiker de toolbar kan verbergen.
Het menu "Venster" laat de gebruiker toe om de schikking (de MDI-layout) van de kindvensters te veranderen.
De toolbar bevat een aantal componenten die reeds hierboven werden behandeld.
Het voornaamste doel van de toolbar is verhinderen dat de gebruiker telkens het menu moet gaan raadplegen
om een bepaalde taak te volbrengen.
Het is tevens mogelijk om via een aantal sneltoetsen bepaalde taken uit te voeren. Deze toetsencombinaties kan
je terugvinden in de desbetreffende menu's.
|