So ändern Sie die Größe der Fenster in C++?
Hallo ich habe ein Programm in C++ und ich möchte sicherstellen, dass, wenn das Programm ausgeführt wird, öffnet die Konsole in einer bestimmten Größe/Abmessungen,, so dass die Anzeige in meinem Programm ist das richtige. Ich brauche Hilfe, da ich nicht weiß, wie es zu tun. Ich bin mit Dev-C++ 5.42(Orwell). Ich habe versucht, mit
#include<iostream>
#include<windows.h>
using namespace std;
SetWindowPos(hwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE | SWP_SHOWWINDOW);
int main(){
cout<<"Hello World";
}
und bekam eine Fehlermeldung
[Error] expected constructor, destructor, or type conversion before '(' token
Ich bin ein Anfänger und daher weiß ich nicht viel über diese Dinge.
- Wir müssen sehen, mehr von den code um diese Zeile.
- Haben Sie gehören
<windows.h>
für diese Funktion? Und die Konsole-Fenster aber auch nicht zu freundlich zu sein, in der Größe verändert über seine max Abmessungen, also behalte das im Hinterkopf. - Wenn Sie versuchen, ändern Sie die Größe der Konsole-Fenster,
SetConsoleDisplayMode()
- Weiter zu den anderen Kommentaren, auch wenn es ihn kompilieren und ausführen, was genau denkst du, dass die Fahnen SWP_NOMOVE-und SWP_NOSIZE tun? (Tipp: genau das, was Sie sagen.) Verwenden Sie eine oder das andere oder weder, aber nicht beides, es sei denn, Sie versuchen, ändern Sie die Z-Reihenfolge des Fensters zu verändern, ohne seine Größe oder position auf dem Bildschirm.
- der vollständige code ist wie folgt #include<iostream> #include<windows.h> using namespace std; SetWindowPos(hwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE | SWP_SHOWWINDOW); int main(){ cout<<"Hallo Welt"; }
- können Sie mir ein Beispiel dafür, wie die Funktion SetConsoleDisplayMode() ?
- Putting-code vor
main
macht es nicht ausführen, bevormain
. Setzen Sie ihn einfach am Anfangmain
es sei denn, Sie haben wirklich einen guten Grund, warum es braucht, um laufen, bevormain
, in dem Fall gibt es Methoden, die machen, dass passieren. - es ist immer noch die gleichen Fehler. Btw ich hab die Codezeile aus dem internet, so dass ich nicht weiß, was was macht.
- jetzt heißt es hwnd nicht angegeben
- Gut, Sie brauchen eine richtige handle für das Fenster. Einer der console-Funktionen bietet, aber wirklich,
hwnd
ist nur eine normale variable, und wie jedes andere, es muss erklärt werden, gesetzt/initialisiert, etc. - also, wie ist es deklariert ?
- mögliche Duplikate von Reduzierung Konsole Größe
- C++ ist nicht ein Do-What-I-Mean-Programmiersprache. Compiler sind ganz besonders über die syntax. Lesen Sie The Definitive C++ Book Guide and List - Einleitung.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diese Funktion ist nutzlos für Konsole-Anwendungen, die kein eigenes Fenster (es sei denn, Sie legen Sie über die
CreateWindow
- API, die untypisch für Konsole-Anwendungen). Statt deren Ausgang angeschlossen ist, um csrss, welches keine Fenster haben.Sollten Sie mit Hilfe
SetConsoleScreenBufferSize
SetConsoleWindowInfo
statt.
Es ist ein Beispiel, bei http://www.cplusplus.com/forum/windows/10731/
Diese funktioniert bei mir:
Wenn Ihr auf der Suche für die änderung der Bildschirm-Puffer dann :
Größe des Bildschirms verwenden DaveWalley Lösung.
Oder Sie könnten dies tun (nur die Größe)
Werden Sie sicher, dass:
am Anfang der Datei. Buchstäblich wie die ersten Zeilen.
Habe die Lösung von reding über die genannten Funktionen durch Ben Voigt.