ID.nl logo
Programmeren in Visual Basic Express: Maak uw eigen programma's (deel 1)
© Reshift Digital
Huis

Programmeren in Visual Basic Express: Maak uw eigen programma's (deel 1)

Zelf programma's maken is een prima manier om de computer nog beter te leren kennen. Microsoft heeft daarvoor tegenwoordig het gratis Visual Basic Express beschikbaar, een 'programma' waarmee u uw eigen Windows-applicaties kunt maken. Visual Basic Express (VBE) kunt u gratis downloaden vanaf msdn.microsoft.com/vstudio/express/downloads/default.aspx.

Zelf programma's maken is een prima manier om de computer nog beter te leren kennen. Microsoft heeft daarvoor tegenwoordig het gratis Visual Basic Express beschikbaar, een 'programma' waarmee u uw eigen Windows-applicaties kunt maken. Visual Basic Express (VBE) kunt u gratis downloaden vanaf msdn.microsoft.com/vstudio/express/downloads/default.aspx. Onder Step 2 ziet u in de linkerkolom als middelste download Visual Basic 2005 Express Edition. Kies voor de standaard, dus de Engelse editie (afbeelding1). Bij de installatie worden behalveVBE ook Microsoft MSDN 2005 Express Edition en SQL Server 2005 Express Edition geïnstalleerd. Die laatste twee hebt u voor deze workshop niet nodig, maar neem ze er maar bij, altijd handig voor de toekomst... Voor een vlekkeloze werking dient uVBE binnen dertig dagen te registreren, maar dat is toch gratis. Klaar? Eerst nog even dit.

'Event driven' programmeren

Alles wat u van vroeger weet over het programmeren van computers kunt u overboord gooien.Waar u voorheen - weet u nog? - een programmalus creeerde die continu'van-voor-naar-achter-en-weer-opnieuw' controleerde of er op een knop van het toetsenbord werd gedrukt, daar doet u tegenwoordig helemaal niets. Ja, u leest het goed. Netjes geprogrammeerde Windows applicaties kennen namelijk helemaal geen programmalus. In plaats daarvan blijven ze geduldig wachten tot er iets gebeurt en dáár reageren ze dan op. Hoewel? Ze reageren alleen als de opgetreden' gebeurtenis' door ú is ingeprogrammeerd ... Zo'n gebeurtenis kan van alles zijn; het van grootte laten veranderen van het werkvenster, het indrukken van een button, het selecteren van een menuoptie, enzovoort. U kunt uw applicatie bijvoorbeeld zo programmeren dat zodra er op een bepaalde knop wordt gedrukt, er een tekst in een tekstveld wordt neergezet. Voor alle duidelijkheid: een knop (of een tekstveld of een werkvenster enz.) heet inVBE een object. De naam (='Name') ervan speelt binnenVBE een allesoverheersende rol. Het is namelijk die objectnaam die bepaalt op welke plek de gewenste wijzigingen moeten worden uitgevoerd. Over enkele ogenblikken wordt u alles duidelijk. Een nieuw project Meteen nadatVisual Basic Express is gestart, beginnen we met het bouwen van een nieuw project. Zo'n project bestaat uit een gedeelte (= het formulier) voor de schermen en een gedeelte (= de handelingen ofwel subroutines) achter de schermen, opdat u daar alvast rekening mee kunt houden. Verder moet de ontwikkelomgeving nog een ietsje worden aangepast, zodat u prettig kunt werken.

Stap 1

[afbeelding0]We gaan aan de slag: U laat het introductiescherm voor wat het is en kiest File, New Project. In het venster New Project kiest u voor het sjabloonWindows Application. Daarmee laat uVBE weten dat u een écht programma gaat bouwen dat u straks kunt starten binnen het besturingssysteem zélf. Geef uw project de naam HalloWereld en klik op OK (afbeelding2).

Afbeelding 1.Op de download-pagina vindt u meerdere'Express Edition'-ontwikkelomgevingen. U moet deVisual Basic 2005-versie hebben in de Engelstalige vorm.

Stap 2

[afbeelding0]Het nieuwe projectvenster krijgt de naam Form1.vb (= een verwijzing naar een formulier dat zo dadelijk letterlijk moet worden ingevuld). Sluit nu het introductieschermdoor het bijbehorende tabblad aan te klikken met de rechtermuisknop en te kiezen voor Close. Hiermee krijgt u meer ruimte op hetVBE-werkblad en dat is nodig, want het wordt nog druk zat!

Afbeelding 2.Het type project wordt een WindowsApplication oftewel een programma dat direct binnen het besturingssysteem kan draaien. De naam van de applicatie? HalloWereld.

Stap 3

[afbeelding0]Even later hebt u met nog slechts één tabblad te maken, Form1.vb. U kunt het formulier dat - linksboven in beeld - nu nog de naam Form1 heeft, uitrekken door het rechtsonder 'vast te pakken' met de linkermuisknop. Op die manier kunt u het formulier groter en kleiner maken, al naargelang de werkruimte die het toekomstige programma nodig heeft (afbeelding3).

Afbeelding 3. Het basisformulier Form1.vb wordt getoond en met behulp van de linkermuisknop kunt u het werkblad uitrekken. Verder uw aandacht voor de knopToolbox die u via de menukeuzeView, Toolbox tevoorschijn laat komen.

Stap 4

[afbeelding0]Vervolgens concentreert u zich - linksboven in beeld - op de zogehetenToolbox (u kunt deze desgewenst altijd activeren viaView,Toolbox). Deze Toolbox is het meest essentiële onderdeel van deVBE, omdat het alle componenten bevat die u nodig hebt om te kunnen communiceren met (1) de gebruiker van het toekomstige programma, (2) de door u geschreven Visual Basic-routines, (3) de benodigde objecten én (4) het besturingssysteem. Open de Toolbox door op het pictogram te klikken. Meteen daarna klikt u de bovenkant van de Toolbox aan met de rechtermuisknop en zet u een vinkje voor de optie Auto Hide. Dit zorgt er voor dat deze gereedschapskist op precies de goede momenten zichtbaar en weer onzichtbaar wordt...

Afbeelding 4. Vanuit de Toolbox sleept u een buttonobject naar het formulier. Dat buttonobject wordt standaard voorzien van een aantal eigenschappen waaronder de naam (= Button1).

Stap 5

[afbeelding0]Nu de kist tóch is geopend, moet u eens klikken op het Plus-teken voor de optie AllWindows Forms. Er klapt een enorme keuzelijst tevoorschijn en u krijgt alvast te zien welke objectenVisual Basic Express voor u in de aanbieding heeft. Een aantal van de getoonde componenten (zoals Button, CheckBox, Label en Listbox) herkent u meteen, dus dat is een prettige binnenkomer! Wellicht gaat er al een lichtje bij u branden, want het is de bedoeling dat we zo dadelijk objecten uit de getoonde Toolbox oppakken en neerzetten op het formulier dat nu nog de naam Form1.vb draagt. Later moeten we dan de onderlinge verbanden tussen de losse objecten gaan leggen.

Afbeelding 5. We veranderen de naam van de VBE-applicatie in Hallowereld.vb. Dit is een eerste aanzet tot het wijzigen van de eigenschappen van de objecten.

Objecten manipuleren

U gaat het formulier - dat nú nog de naam Form1.vb draagt - voorzien van de benodigde objecten die tevens manipuleren:

Stap 1

[afbeelding0]In de keuzelijst van de Toolbox klikt u op het objecttype Button. De muisaanwijzer ondergaat nu een kleine gedaantewisseling. Klik met de linkermuisknop in het formulier Form1.vb en u ziet dat de eerste knop (= een button) wordt geplaatst. Deze knop krijgt automatisch de naam Button1 toegewezen (afbeelding4).

Stap 2

[afbeelding0]Ga weer naar deToolbox en klik het objecttype Label aan. Ook nu verandert de muisaanwijzer. Sleep het Label naar het formulier Form1.vb en zet het met een druk op de linkermuisknop op de gewenste plek neer. Dat label wordt, net als hierboven de knop, automatisch voorzien van een unieke naam en dat is Label1.

Stap 3

[afbeelding0]Nu kunt u de objecten - waarvan het formulier zélf er ook eentje is - manipuleren. U klikt het formulier aan en rechtsboven in beeld kijkt u naar de sectie Solution Explorer die een verwijzing toont naar het genoemde formulier. Wijzig Form1.vb in HalloWereld.vb, om alvast een idee te krijgen hoe de onderlinge verhoudingen worden geregeld binnenVisual Basic Express. U ziet dat de titel van het formulier nog steeds staat ingesteld op Form1 (afbeelding5).

Stap 4

[afbeelding0]Klik met linkermuisknop op de knop Button1. U kunt de knop van grootte veranderen én u kunt de onderliggende eigenschappen ervan wijzigen. Rechts in beeld ziet u de sectie Data Sources, waarin de knop letterlijk wordt beschreven. Het veld (Name) bevat de naam van het object, die we  veranderen in KNOP. Het veldText bevat de opdruk van de knop en daarvan maken we KLIK HIER! (afbeelding6). Als u even verder kijkt, dan ziet u dat de knop nog meer eigenschappen (= kleur, lettertype) heeft die u kunt veranderen, maar dat is voor nu niet interessant ...

Stap 5

[afbeelding0]Selecteer nu het label en wijzig ook van dit object de eigenschappen via de sectie Data Sources. DeText (= de inhoud) van het label wordt ingesteld op LEEG. De (Name) van het label verandert u inTEKST. Ook voor een label geldt dat er nog meer eigenschappen kunnen worden aangepast:wederom nu niet interessant.

Stap 6

[afbeelding0]Intussen klikt u - in het werkvenster - op het formulier, waarbij u zult merken dat de sectie Data Sources andermaal het een en ander heeft te melden. Zo blijkt het veldText de titel van het formulier te zijn. En ook het veld (Name) (= de naam van het  formulierobject) kan worden aangepast. U maakt van de gelegenheid gebruik om de titel (= het veldText dus) van het formulier te wijzigen in HalloWereld!... Het veld (Name) verandert u in Hallowereld.

Even resumeren ...

Op het formulier (=het object) Hallowereld staan nu (1) de button (= het object) KNOP en (2) het label (= het object)TEKST. Het veldText van het objectTEKST is nu voorzien van de waarde LEEG. Wat we zo dadelijk gaan regelen is dat een druk op het object KNOP de waarde van het veld Text van het objectTEKST gaat veranderen in HalloWereld!...

▼ Volgende artikel
Column: Overwatch 2 heeft juist nu een PvE-modus nodig
© Blizzard
Huis

Column: Overwatch 2 heeft juist nu een PvE-modus nodig

Liveservicegames en hero shooters waren in 2016 niet per se nieuw. Destiny ging al twee jaar hard, en hoewel nieuwkomer Overwatch erg goed ontvangen werd, trokken sommigen al snel vergelijkingen met Valve’s inmiddels oude Team Fortress 2. Toch wist de hero shooter van Blizzard een Game of the Year Award voor de neus van onder andere Uncharted 4: A Thief’s End weg te grissen. Het was een glorieus begin van een moeizaam traject.

In de afgelopen tien jaar onderging Overwatch grote veranderingen. Na een groot succes met ruim 50 miljoen totale spelers in de eerste drie jaar kondigde Blizzard in 2019 aan dat er een vervolg zou komen, dat ‘naast het originele Overwatch’ moest bestaan en uitgebreid werd met Player-versus-Environment-content. De 6-tegen-6 Player-versus-Player-gameplay waar Overwatch om bekendstaat, zou blijven bestaan en voorzien worden van dezelfde content in de twee games. Ook zou Overwatch 2 een exclusieve PvE-modus met een verhaallijn en skill-trees krijgen, waarmee ieder personage op zowel grote als subtiele wijze aangepast kon worden.

©Blizzard

Nee, toch niet

Wie Overwatch 2 sinds de early access-verschijning eind 2022 heeft gespeeld, weet dat daar maar bar weinig van is waargemaakt. Overwatch en Overwatch 2 werden ten eerste geen aparte titels: laatstgenoemde heeft de plaats van het origineel simpelweg ingenomen. Die verhaalmodus? Voor 15 euro kreeg je met de 1.0-release van Overwatch 2 in augustus 2023 toegang tot drie missies. Die verkochten niet goed genoeg voor Blizzard – volgens bronnen Bloomberg - waarmee de mogelijkheid van meer PvE-content direct werd begraven.

Het was toen zelfs al bekend dat de PvE-modus grotendeels geschrapt was, gezien de modus volgens regisseur Aaron Keller ‘de focus tijdens het ontwikkelproces van de game belemmerde’. Dat is geen vreemde redenering, maar PvE was wel juist datgene dat Overwatch 2… nou ja, Overwatch 2 maakte. Uiteindelijk was de lancering van de ‘nieuwe’ game vooral een grote update, met drie nieuwe personages, wat extra arena’s en een nieuwe 5v5-opzet in plaats van 6v6. Er stond nu slechts een ‘2’ achter.

©Blizzard

Een alternatieve toekomst

Recent werd aangekondigd dat Overwatch 2 het cijfer van de naam afknipt met het twintigste seizoen en dus weer gewoon Overwatch heet – we zijn dus weer terug bij af. Ik stapte zelf destijds op de Overwatch-trein door juist de belofte van PvE in het vervolg, en heb uiteindelijk pakweg 300 uren tussen beide games verdeeld. Hoewel ik naarmate de tijd vorderde wat uren in de competitieve modus stak, maakte het spelen met vrienden de ervaring écht vermakelijk.

Gezellig kletsen, schreeuwen tegen willekeurige teamgenoten en de mix van tactiek en variatie die de vele personages in Overwatch bieden: dat staat mij bij. Een PvE-modus waarin juist dat samenspel en de speelwijze van de verschillende heroes aan te passen zijn naar jouw speelstijl was een soort heilige graal, die uiteindelijk dus nooit verscheen. Dat is eeuwig zonde. De competitieve e-sportscene van Overwatch is al sinds het begin een belangrijk aspect van de game, dus ergens is het begrijpelijk dat het team dit niet uit het oog wilde verliezen.

©Blizzard

Maar juist in de laatste jaren zien we een interessante verschuiving naar PvE, of in ieder geval multiplayer-ervaringen die niet geheel om competitie draaien. Denk aan Helldivers 2 van een paar jaar terug, waarin vrienden en willekeurige spelers het opnemen tegen legioenen aan vijanden – en zelfs wereldwijd samen naar een doel werken. Of de explosie aan zogenaamde ‘friendslop’ games als Peak en Lethal Company, die geheel draaien om het samen uitvoeren van taken als een berg beklimmen of het verzamelen van schroot. Een game als Arc Raiders bevat daarbij ook PvP-elementen, maar staat ook bij omdat meerdere spelers samen kunnen komen om een gigantische robot te verslaan. Video’s waarbij spelers plots oude vrienden tegenkomen in de game tonen aan waarom PvE momenteel zó ontzettend leuk kan zijn.

De realiteit

Het is achteraf makkelijk te zeggen, maar de originele visie voor Overwatch 2 had best een prominente rol in het huidige gamelandschap kunnen bekleden. Met de aankondiging werden uitgebreide skilltrees getoond voor de verschillende personages waar Overwatch om bekendstaat.

©Blizzard

Een van Mei’s speciale vaardigheden is bijvoorbeeld het veranderen in een ijspegel, om zo health terug te verdienen en een paar seconden onverwoestbaar te zijn. Met een van de skills die getoond werd veranderde deze ijspegel in een ijsbal, waarmee ze op spectaculaire wijze door groepen vijanden kan kegelen. De PvE-modus had de potentie om een soort zandbak voor dergelijke ideeën en ingrijpende veranderingen voor het klassieke Overwatch te worden. Een speelsere mix van skills en samenwerking om juist die avonturen uit bijvoorbeeld een Helldivers 2 te nabootsen. De tactische teamgameplay had dan ook niet hoeven verdwijnen, het zou juist vet geweest zijn om met vrienden verschillende skills af te stemmen en los te laten op de robots van Null Sector.

Dat is nog zoiets: de lore en verhaallijn van Overwatch zijn ontzettend interessant, en had meer in de schijnwerpers kunnen staan met de PvE-insteek. Nog voordat ik de games überhaupt had aangeraakt, verslond ik de prachtig geanimeerde filmpjes van Blizzard en verhalen die ze voor de personages uitbrachten.

Watch on YouTube

Wat ik dan ook zie van de nieuwe update wringt met mijn gevoel. Ja, het lijkt erop dat Blizzard een inhaalslag maakt en sneller met nieuwe personages komt om de game fris te houden. Het wekt de indruk dat we weer terug zijn bij het ‘oude’ Overwatch, en dat de ontwikkelaar nog altijd een sterke hero shooter wil behouden nu concurrenten als Marvel Rivals het speelveld hebben betreden. Toch kan ik het niet laten om te fantaseren over hoe Overwatch meer had kunnen zijn dan een hero shooter.

De realiteit is dat het Overwatch-team geen goede balans wist te vinden tussen het bijhouden van de PvP- en competitieve scene van Overwatch en de ontwikkeling van de PvE. Zonde, want zeker in het huidige multiplayerklimaat, waar mensen steeds meer achterover lijken te hangen om met elkaar te spelen in plaats van tegen elkaar, had het originele Overwatch 2 perfect gepast.

▼ Volgende artikel
We geven Mario Tennis Fever weg voor de Switch 2
Huis

We geven Mario Tennis Fever weg voor de Switch 2

Samen met onze vrienden van bol geven we wekelijks een nieuwe game weg, en deze week is dat natuurlijk Mario Tennis Fever.

Fever verscheen namelijk deze week voor de Nintendo Switch 2 en is volgens onze Simon een uitstekende Mario-sportgame. Met z'n Fever Rackets - die speciale slagen vol onvoorspelbare effecten mogelijk maken - goede basisgameplay en flink wat content weet Fever boven de afgelopen delen uit te stijgen:

Mario Tennis Fever barst van de content. De vele personages, banen en rackets geven unieke, diepere lagen aan de gameplay en multiplayerpotjes gaan met grote glimlach en een berg vertier gespeeld worden. Jammer voor de wat volwassenere spelers dat die volgende laag diepgang nét niet geraakt wordt. Daarvoor is het singleplayeraanbod niet genoeg, de tegenstanders niet uitdagend genoeg en ontbreekt er hier en daar net wat finesse. Maar ga zo door, Nintendo. Mario Tennis Fever zit namelijk wél in de richting van die tijdloze Camelot-klassiekers waar we zo naar hunkeren.

Winnen

Wat moet je doen om te winnen? Ga naar de website van bol, vind de productcode in de url (bestaande uit zestien cijfers) en vul die hieronder in het invulformulier in! Vergeet ook niet je naam en emailadres in te vullen, dan sturen we je zo snel mogelijk een code om de game fysiek op bol.com te bestellen!

Werkt het formulier niet? Klik dan hier.

Watch on YouTube