Een toepassing moet de volgende informatie opgeven bij het maken van een venster:
Deze kenmerken worden beschreven in de volgende secties.
Elk venster behoort tot de klasse van een venster. Een toepassing moet een klasse venster registreren voordat alle vensters van die klasse maken. Het venster klasse definieert de meeste aspecten van het uiterlijk en de werking van een venster. De belangrijkste component van de klasse van een venster is het venster procedure, een functie die ontvangt en verwerkt van alle input en aanvragen die worden verzonden naar het venster. Het systeem biedt de input en vraagt in de vorm van berichten. Voor meer informatie, Zie Venster klassen, Venster Proceduresof berichten en berichtenwachtrijen.
Een Vensternaam (ook wel venstertekstgenoemd) is een tekenreeks waaraan een venster voor de gebruiker. Een belangrijkste venster, dialoogvenster of berichtvenster meestal de vensternaam weergegeven in de titelbalk, indien aanwezig. Voor een besturingselement hangt het uiterlijk van de naam van het venster van het besturingselement klasse. Een knop, edit-besturingselement of statische besturingselement weergegeven de vensternaam binnen de rechthoek bezet door het besturingselement. Een keuzelijst, keuzelijst met invoervak of statische besturingselement weergegeven zijn Vensternaam niet.
Een toepassing gebruikt de functie SetWindowText naam van het venster wijzigen nadat u het venster hebt gemaakt. Het maakt gebruik van de functies GetWindowTextLength en GetWindowText voor het ophalen van de huidige tekst venster-naam van een venster.
Elk venster heeft een of meer venster stijlen. Een venster stijl is een benoemde constante die definieert een aspect van de vormgeving en het gedrag die niet is opgegeven door de klasse van het venster van het venster. Bijvoorbeeld, de SCROLLBAR klasse een scroll bar besturingselement gemaakt, maar de SBS_HORZ en SBS_VERT stijlen bepalen of een besturingselement horizontale of verticale scroll bar is gemaakt. Een paar venster stijlen toepassen op alle windows, maar het meest van toepassing op windows van specifieke venster klassen. Het systeem en, tot op zekere hoogte, de venster-procedure voor de klasse, interpreteren de venster stijlen.
Een bovenliggend venster kan een venster hebben. Een venster dat een bovenliggende Business Unit heeft wordt een onderliggend venstergenoemd. Het bovenliggende venster biedt het coördinatensysteem wordt gebruikt voor het plaatsen van een onderliggend venster. Met een bovenliggend venster heeft invloed op aspecten van het uiterlijk van een venster; bijvoorbeeld, wordt een onderliggend venster afgekapt, zodat geen enkel deel van het onderliggende venster buiten de grenzen van het bovenliggende venster kan verschijnen. Een venster dat geen bovenliggend object heeft, of waarvan de bovenliggende is het bureaubladvenster, heet een venster op het hoogste niveau. Een toepassing gebruikt de EnumWindows functie te een handvat om elk van haar op het hoogste niveau windows te verkrijgen. EnumWindows geeft de ingang voor elk venster op het hoogste niveau, op zijn beurt, aan een toepassing gedefinieerde callback functie, EnumWindowsProc.
Een venster kan eigen, of eigendom zijn van, een ander venster. Een eigendom venster verschijnt altijd voor haar raam eigenaar, is verborgen wanneer een eigenaar-venster is geminimaliseerd, en wordt vernietigd wanneer de eigenaar venster wordt vernietigd.
Elk venster heeft een locatie, de grootte en positie in de Z-volgorde. De locatie is de coördinaten van het venster de linker bovenhoek, relatief ten opzichte van de linkerbovenhoek van het scherm of, in het geval van een onderliggend venster, de linkerbovenhoek van het bovenliggende gebied. De grootte van een venster is de breedte en hoogte in pixels is gemeten. Van een venster positie in de Z-volgorde is de positie van het venster in een stapel overlappende vensters. Voor meer informatie, Zie Z-volgorde.
Een onderliggend venster kan een subvenster id, hebben een unieke, door de toepassing gedefinieerde waarde verbonden aan het onderliggende venster. Kind-venster-id's zijn vooral nuttig in toepassingen die meerdere onderliggende vensters maken. Bij het maken van een onderliggend venster, geeft een toepassing de identificatie van het onderliggende venster. Na het maken van het venster, de aanvraag-id van het venster kunt wijzigen met behulp van de functie SetWindowLong of de id kan worden opgehaald met behulp van de functie GetWindowLong.
Elk venster, kan behalve een onderliggend venster, een menu hebben. Een toepassing kan bevatten een menu door het verstrekken van een greep menu ofwel bij de registratie van het venster klasse of bij het maken van het venster.
Elke Win32-toepassing heeft een sessiehandler gekoppeld. Het systeem biedt de sessiehandler aan een toepassing als de toepassing wordt gestart. Omdat het meerdere exemplaren van dezelfde toepassing uitvoeren kunt, het systeem exemplaar grepen intern gebruikt voor één exemplaar van een toepassing van een andere te onderscheiden. De toepassing moet de sessiehandler in vele verschillende vensters, met inbegrip van die waarmee windows opgeven.
Elk venster kan gegevens voor het aanmaken van toepassing gedefinieerde gekoppeld hebben. Wanneer het venster voor het eerst wordt gemaakt, geeft het systeem een aanwijzer aan de gegevens over naar de venster procedure van het venster wordt gemaakt. Het venster procedure gebruikt de gegevens om te initialiseren toepassing gedefinieerde variabelen.