Kann man das machen



  • sebastianfox schrieb:

    1. Die Position vom Zeiger von der Maus wissen, wenn man die Eingabenaufforderung auf Full Screen umgestellt hat

    Du könntest es mit der WinApi versuchen. Da gibt es glaube ich GetCursorPos() ( Das Gegenstück zu SetCursorPos() )

    sebastianfox schrieb:

    2.Wenn man die Position weiß und da klicken soll,z.B.: Wo Hallo steht dass da was erscheint

    Wenn du dann mit der obigen Funktion die Position gespeichert hast und du weißt, an welcher Position dein "Hello" steht, dann kannst du ja ganz einfach überprüfen ob der Mauszeiger darüber ist und dann mit GetAsyncKeyState() abfragen ob die Maus gedrückt wurde.

    sebastianfox schrieb:

    3.Bilder (alle Bildformate, egal welches) in der Eingabenaufforderung erscheinen lassen

    In der Console anzeigen sicher nicht. Nur halt öffnen

    sebastianfox schrieb:

    4. Dass, wenn der Zeiger erscheint, dass Programm nicht abstürtzt.

    ???

    Hoffe ich konnte helfen,
    Finn



  • sebastianfox schrieb:

    4. Dass, wenn der Zeiger erscheint, dass Programm nicht abstürtzt.

    Ist nicht einfach, sollte aber gehen.



  • Man kann Bilder in der Konsole anzeigen lassen:

    int xPos,yPos,Width,Height;
    HBITMAP hBitmap(HBITMAP)LoadImage(NULL, "MeineBitmap.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);  
    BITMAP bmp; 
    GetObject(hBitmap,sizeof(bmp),&bmp);  
    HWND hwnd = FindWindow("ConsoleWindowClass",NULL); 
    HDC hDC = GetDC(hwnd);    
    HDC hBitmapDC = CreateCompatibleDC(hDC);  
    SelectObject(hBitmapDC, hBitmap);  
    BitBlt(hDC, xPos, yPos, Width, Height, hBitmapDC, 0, 0, SRCCOPY);   
    DeleteObject(hBitmap);  
    ReleaseDC(hwnd, hBitmapDC);  
    ReleaseDC(hwnd, hDC);
    

    Das funktioniert allerdings nicht im Vollbildmodus und nicht bei jedem Dateiformat.

    MfG, Jochen


  • Administrator

    Jochen S. schrieb:

    Das funktioniert allerdings nicht im Vollbildmodus und nicht bei jedem Dateiformat.

    Genau genommen funktioniert es sogar gar nicht. Du siehst zwar das Bild, aber schiebe mal ein anderes Fenster darüber. Schon verschwindet das Bild. Das Bild ist also extrem flüchtig und ich habe noch nie eine sinnvolle Anwendung davon gesehen.

    Im übrigen als Verbesserung zu deinem Code:
    http://msdn.microsoft.com/en-us/library/ms683175.aspx

    Grüssli



  • Dieser Thread wurde von Moderator/in pumuckl aus dem Forum C++ in das Forum WinAPI verschoben.

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

    Dieses Posting wurde automatisch erzeugt.



  • Jochen S. schrieb:

    Man kann Bilder in der Konsole anzeigen lassen:

    int xPos,yPos,Width,Height;
    HBITMAP hBitmap(HBITMAP)LoadImage(NULL, "MeineBitmap.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);  
    BITMAP bmp; 
    GetObject(hBitmap,sizeof(bmp),&bmp);  
    HWND hwnd = FindWindow("ConsoleWindowClass",NULL); 
    HDC hDC = GetDC(hwnd);    
    HDC hBitmapDC = CreateCompatibleDC(hDC);  
    SelectObject(hBitmapDC, hBitmap);  
    BitBlt(hDC, xPos, yPos, Width, Height, hBitmapDC, 0, 0, SRCCOPY);   
    DeleteObject(hBitmap);  
    ReleaseDC(hwnd, hBitmapDC);  
    ReleaseDC(hwnd, hDC);
    

    LOL! Das geht nicht! 26 Fehler! 😡 👎 👎



  • Vergiss die Konsole im Vollbild. Ist nur blöd, und geht ab Vista eh nimmer gscheid. Nur mit nem lumpigen Treiber.

    Schau dir http://www.sfml-dev.org/ an.



  • @sebastianfox:

    Wenn du 26 Fehler hast, hast du wahrscheinlich nicht alle Header inkludiert. Poste mal deine Fehlermeldungen.



  • wenn du noch ein 32 bit windows mit DOS emulation hast, dann...

    __asm mov ax, 0x13
        __asm int 0x10
        // wir sind im grafikmodus, juchu!!!
    


  • Ich habe einen 32 Bit Windows(Windows Xp) aber kein MS-DOS. Bin gerade in der Schule, schreib vom Schulcomputer aus. Versuche dann zuhause.



  • Computer sagt nein..............<"Hust">



  • Hi

    Oder du hast keine Ahnung. #hust#

    Lowbyte



  • Oder ich schrieb den Code ab.............. <"Hust">



  • Tip: du brauchst dazu schon einem DOS-Compiler.

    Ein Windows-Programm wird nie mit der DOS-Emulation ausgeführt, und hat daher auch keinen Zugriff auf die (emulierten) VGA BIOS Funktionen.

    *hust*



  • Hi

    Hustebaer, lass ihn doch mal suchen !!
    Dan bekommen wir wider so hübsche mad's zu sehen 😃

    lowbyte



  • Ich würd ja gern mal den Code sehen, den sebastianfox bis jetzt zusammengebastelt hat. 😃
    Wär wahrscheinlich eher ein Patchwork aus Codefragmenten als ein vernünftiger Quelltext.

    @sebastianfox:
    Lerne erst einmal rechtig zu Programmieren, bevor du dich an grafische Anwendungen heranwagst. Deine Beitäge lassen nämlich darauf schliessen, dass du dich noch nicht wirklich mit den Grundlagen der Programmierung beschäftigt hast.



  • Ich kann schon die C++ Grundlagen .... <"hust">

    Ach, ja! an @alle:
    Ich habe <dos.h> geincludet. Ich dachte immer, das reicht... Aber wo kriege ich so ein dos Compiler?



  • Du kannst nicht die Grundlagen von C++, da bin ich mir sicher. Das sieht man ganz einfach an deinen Beiträgen. Und du glaubst doch nicht wirklich, dass du es schaffst, etwas vernünfitiges mit dem Code von hustbaer anzufangen. Lass das lieber mit dem Grafikzeugs, lerne erstmal die Grundlagen von C++. Als Grundlagen meine ich jetzt nicht, dass du weißt, wie man mit schleifen, if-Bedingungen, Funktionen etc umgeht. Das kann man schon nach kurzer Zeit. Und wenn du so klicki-klicki-bunti Programme oder gar Spiele programmieren willst, kommst du mit der Konsole eh nicht weit.

    Zu dem Compiler: Der Compiler Borland C++ 5.1 kann beispielsweise echte DOS-Programme erstellen.



  • Mit "Grafikzeugs" kann man auch gut lernen!



  • Ja, wenn man Bibliotheken wie mSUM (für Delphi) benutzt, ist es nicht schwer, damit Grafiken zu erzeugen. Allerdings will sebastianfox offensichtlich in der Konsole mit Grafik arbeiten, was natürlich der allergrößte Pfusch ist. Wenn man mithilfe der WinApi grafische Programme erzeugen will, muss man schon einiges an Grundwissen haben, Mit der Winapi kann man also auch nicht so gut Lernen. Bevor ich meine erste grafische Anwendung geschrieben hab, habe ich etwa 2 Jahre nur mit der Konsole gearbeitet.


Anmelden zum Antworten