K.O. Geplaatst: 23 juli 2007 Rapport Geplaatst: 23 juli 2007 Mijn vraag/probleem: is het mogelijk om de grootte van je standaard schermpje te veranderen? Ik ben een duidelijke beginner en gebruik in mijn 'programmaatje' slechts simpele dingen als I/O met cin en cout en wat gereken met variabelen. Nu komen er een paar zinnen net buiten het scherm, waardoor een paar letters op een nieuwe regel verschijnen. Is het dus mogelijk om op een simpele manier dit te veranderen? Als je het programma runt kun je, met de muis, niet de horizontale grootte veranderen (die ik dus wil), maar wel de verticale Reageren
Mania-92 Geplaatst: 23 juli 2007 Rapport Geplaatst: 23 juli 2007 (bewerkt) Voor ik dit topic las had ik geen idee, ik ben dus even op MSDN (documentatie) gaan zoeken en heb het volgende gevonden: // This example demonstrates the Console.SetWindowSize method, // the Console.WindowWidth property, // and the Console.WindowHeight property. using namespace System; int main() { int origWidth; int width; int origHeight; int height; String^ m1 = "The current window width is {0}, and the " "current window height is {1}."; String^ m2 = "The new window width is {0}, and the new " "window height is {1}."; String^ m4 = " (Press any key to continue...)"; // // Step 1: Get the current window dimensions. // origWidth = Console::WindowWidth; origHeight = Console::WindowHeight; Console::WriteLine( m1, Console::WindowWidth, Console::WindowHeight ); Console::WriteLine( m4 ); Console::ReadKey( true ); // // Step 2: Cut the window to 1/4 its original size. // width = origWidth / 2; height = origHeight / 2; Console::SetWindowSize( width, height ); Console::WriteLine( m2, Console::WindowWidth, Console::WindowHeight ); Console::WriteLine( m4 ); Console::ReadKey( true ); // // Step 3: Restore the window to its original size. // Console::SetWindowSize( origWidth, origHeight ); Console::WriteLine( m1, Console::WindowWidth, Console::WindowHeight ); } /* This example produces the following results: The current window width is 85, and the current window height is 43. (Press any key to continue...) The new window width is 42, and the new window height is 21. (Press any key to continue...) The current window width is 85, and the current window height is 43. */ BRON: http://msdn2.microsoft.com/en-us/library/s...indowwidth.aspx De uitleg staat erbij maar ik zal het nog even (proberen) uit te leggen... #include<iostream> // using namespace Console; // Bovenstaande is optioneel, wil je Console:: niet ervoor zetten kun je bovenstaande uncommente int main(){ // Variabelen om de waarden op te slaan int height; int width = 1; // Waarde die je wilt, hoe groter, hoe breder je scherm... // Zoek de huidige hoogte om die straks in te vullen, zodat de hoogte niet veranderd height = Console::WindowHeight; // Zet de breedte en hoogte goed, hoogte blijft hetzelfde als het was, tenzij je de variabel width veranderd. Console::SetWindowSize(width, height); return 0; } LET OP! Code is niet getest, fouten kunnen er daarom inzitten!!! Dit moet je dus even bij je programma inbouwen, en dan de variabel width de waarde die je wilt meegeven.. Bewerkt: 24 juli 2007 door Mania-92 Reageren
K.O. Geplaatst: 24 juli 2007 Auteur Rapport Geplaatst: 24 juli 2007 (bewerkt) Hmm, als ik de volgende code invoer: int height, width=700; height=Console::WindowHeight; Console::SetWindowSize(width,height); Krijg ik een aantal foutmeldingen. Namelijk 'Console' has not been declared, 'WindowHeight' undeclared (first use this function) en ongeveer dezelfde meldingen bij 'Console' en 'SetWindowSize'. Kan het zijn dat ik de header die deze functies definieert niet toegevoegd is? Op het moment gebruik ik iostream, cstdlib en stdlib.h. Ook heb ik 'using namespace std' en niet system. Zou het daar aan liggen? Ps. ik gebruik Dev-C++ Bewerkt: 24 juli 2007 door K.O. Reageren
Mania-92 Geplaatst: 24 juli 2007 Rapport Geplaatst: 24 juli 2007 (bewerkt) Hmm, als ik de volgende code invoer: int height, width=700; height=Console::WindowHeight; Console::SetWindowSize(width,height); Krijg ik een aantal foutmeldingen. Namelijk 'Console' has not been declared, 'WindowHeight' undeclared (first use this function) en ongeveer dezelfde meldingen bij 'Console' en 'SetWindowSize'. Kan het zijn dat ik de header die deze functies definieert niet toegevoegd is? Op het moment gebruik ik iostream, cstdlib en stdlib.h. Ook heb ik 'using namespace std' en niet system. Zou het daar aan liggen? Ps. ik gebruik Dev-C++ Ik denk dat het dan ergens anders gedefinieerd staat, ik start nu visual studio om daar even de code te testen. Ik edit deze post zodra ik meer weet. EDIT 1: In mijn code moest het trouwens niet using namespace std; zijn maar using namespace Console; Foutje van mij. Maargoed het verhelpt het probleem niet... EDIT 2: Ik heb het voorbeeld te snel overgekeken daar wordt blijkbaar de namespace System gebruikt, alleen geeft visual aan dat deze niet bestaat. EDIT 3: Ik kan onderstaande code nu zonder problemen compile, je moet wel een CLR aplicatie nemen want anders pakt hij System dus niet... Maar hij doet het nog steeds niet helaas, als ik width te hoog instel crasht hij en anders floept hij er na een paar seconden uit. #include<iostream> #include "stdafx.h" using namespace System; int main(){ int height; int width = 100; height = Console::WindowHeight; Console::SetWindowSize(width, height); return 0; } Bewerkt: 25 juli 2007 door Mania-92 Reageren
K.O. Geplaatst: 25 juli 2007 Auteur Rapport Geplaatst: 25 juli 2007 Heel erg bedankt voor de moeite, maar eerlijk gezegd is het niet meer nodig. Ik ben er achter gekomen dat als je in zo'n commandprompt met de RMB op de titelbalk klikt, je bepaalde instellingen kunt wijzigen, waaronder de breedte van het schermpje. Eigenlijk veel makkelijker zo dus. Reageren
Recommended Posts
Een reactie plaatsen
Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.