Funktion im Dev compilierer



  • Hi Leutz ich wollte euch mal fragen obs ne alternative Funktion zum getch unter dem Dev-c++ Compilier gibt!?
    Geht um Menüführung mit Pfeil!!!
    Kumpel hat die Funktion unter Visual geschireben aber ich nutze den Dev-C++!

    Und mit dem getch sagt er,der compilier, geht nicht!

    Wär cool wenn jemand ne alternative hätte!

    Würd gerne Pfeile im Menü benutzen!

    #define MM_CENTER -1
    #include <windows.h>
    #include <string>
    
    using namespace std;
    
    int menu(int iPosX, int iPosY, string strDot, string strBlocks[])
    {
    	int iChoice = 0, iPosition = 1, iPoints = 0, iCenter = 0;
    
    	if(iPosY == MM_CENTER)
    	{
    		do
    		{
    			iPoints++;
    		}
    		while(strBlocks[iPoints] != "");
    
    		iPosY = (25-iPoints)/2;
    		iPoints = 0;
    	}
    
    	if(iPosX == MM_CENTER)
    	{
    		do
    		{
    			if(iCenter < strBlocks[iPoints].length()) iCenter = strBlocks[iPoints].length();
    			iPoints++;
    		}
    		while(strBlocks[iPoints] != "");
    
    		iPosX = (80-iCenter-strDot.length())/2;
    		iPoints = 0;
    	}
    
    	do
    	{
    		gotoxy(iPosX+strDot.length(),iPosY+iPoints);
    		cout << strBlocks[iPoints] << endl;
    		iPoints++;
    	}
    	while(strBlocks[iPoints] != "");
    
    	gotoxy(iPosX,iPosY);
    	cout << strDot;
    
    	while(iChoice != 13)
    		{
    			iChoice = getch(); //<--<-<-< DER FEHLER
    			switch(iChoice)
    			{
    			case 72:
    				iPosition--;
    				gotoxy(iPosX,wherey());
    
    				for(int x = 1; x <= strDot.length() ; x++)
    				{
    					cout << " ";
    				}
    
    				if(iPosition < 1)
    				{
    					iPosition = iPosition+iPoints;
    					gotoxy(iPosX,wherey()+(iPoints-1));
    					cout << strDot;
    				}
    				else
    				{
    					gotoxy(iPosX,wherey()-1);
    					cout << strDot;
    				}
    				break;
    			case 80:
    				iPosition++;
    				gotoxy(iPosX,wherey());
    
    				for(int x = 1; x <= strDot.length() ; x++)
    				{
    					cout << " ";
    				}
    
    				if(iPosition > iPoints)
    				{
    					iPosition = iPosition-iPoints;
    					gotoxy(iPosX,wherey()-(iPoints-1));
    					cout << strDot;
    				}
    				else
    				{
    					gotoxy(iPosX,wherey()+1);
    					cout << strDot;
    				}
    				break;
    			}
    		}
    	return iPosition;
    }
    

    Geht um Menüführung mit Pfeil!!!



  • omg Quatsch 😞

    geht hier darum das eine eingabe Zentriert in der Konsole ausgegeben WIRD! Sh1c3!

    Sry mein Fehler um das Menü kümmer ich mich ja noch!



  • Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Compiler- und IDE-Forum verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • für getch musst conio.h includen

    #include <conio.h>
    

    es gibt auch einen eintrag in der FAQ: FAQ - DOS und Win32-Konsole


Anmelden zum Antworten