Avatar billede zzzzzzzzzz Nybegynder
19. marts 2005 - 15:46 Der er 15 kommentarer og
1 løsning

Udskrive tekst i en windows app

Hej, jeg er helt helt helt ny i c++!
Jeg gik op i file > new > også window app

Men jeg vil gerne have den til og udskrive en tekst i selve vinduet! - Ikke kun en title, bare den udskrive "hello world" i selve vinduet.

her er koden..


#include <windows.h>


LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);


char szClassName[ ] = "WindowsApp";

int WINAPI WinMain (HINSTANCE hThisInstance,
                    HINSTANCE hPrevInstance,
                    LPSTR lpszArgument,
                    int nFunsterStil)

{
    HWND hwnd;             
    MSG messages;           
    WNDCLASSEX wincl;       

 
    wincl.hInstance = hThisInstance;
    wincl.lpszClassName = szClassName;
    wincl.lpfnWndProc = WindowProcedure;     
    wincl.style = CS_DBLCLKS;               
    wincl.cbSize = sizeof (WNDCLASSEX);

 
    wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);
    wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
    wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
    wincl.lpszMenuName = NULL;               
    wincl.cbClsExtra = 0;                   
    wincl.cbWndExtra = 0;                     
 
    wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND;

 
    if (!RegisterClassEx (&wincl))
        return 0;


    hwnd = CreateWindowEx (
          0,                 
          szClassName,       
          "HH-Bot version 1.0 by Trizial",     
          WS_OVERLAPPEDWINDOW,
          CW_USEDEFAULT,     
          CW_USEDEFAULT,     
          544,               
          375,               
          HWND_DESKTOP,       
          NULL,             
          hThisInstance,     
          NULL               
          );

 
    ShowWindow (hwnd, nFunsterStil);

 
    while (GetMessage (&messages, NULL, 0, 0))
    {
     
        TranslateMessage(&messages);
     
        DispatchMessage(&messages);
    }

 
    return messages.wParam;
}




LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    switch (message)               
    {
        case WM_DESTROY:
            PostQuitMessage (0);     
            break;
        default:                     
            return DefWindowProc (hwnd, message, wParam, lParam);
    }

    return 0;
}
Avatar billede arne_v Ekspert
19. marts 2005 - 15:56 #1
Prøv:


LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    HDC        hdc ;
    PAINTSTRUCT ps ;
    RECT        rect ;

    switch (message)             
    {
    case WM_PAINT:
          hdc = BeginPaint (hwnd, &ps) ;
         
          GetClientRect (hwnd, &rect) ;
         
          DrawText (hdc, TEXT ("Testing!"), -1, &rect,
                    DT_SINGLELINE | DT_CENTER | DT_VCENTER) ;
         
          EndPaint (hwnd, &ps) ;
          return 0 ;
        case WM_DESTROY:
            PostQuitMessage (0);   
            break;
        default:                   
            return DefWindowProc (hwnd, message, wParam, lParam);
    }

    return 0;
}
Avatar billede zzzzzzzzzz Nybegynder
19. marts 2005 - 16:03 #2
tak læg svar!
Avatar billede zzzzzzzzzz Nybegynder
19. marts 2005 - 16:03 #3
men baggrunden på teksten skal ikke være hvid
Avatar billede arne_v Ekspert
19. marts 2005 - 16:05 #4
svar
Avatar billede arne_v Ekspert
19. marts 2005 - 16:08 #5
baggrundsfarven styres da ikke i den koden jeg tilføjede
Avatar billede zzzzzzzzzz Nybegynder
19. marts 2005 - 16:09 #6
ok.. hvordan laver man et icon til selve programmet?
Avatar billede arne_v Ekspert
19. marts 2005 - 16:10 #7
Det må være:

wincl.hbrBackground = (HBRUSH)GetStockObject(enellerandenfarve_BRUSH);
Avatar billede arne_v Ekspert
19. marts 2005 - 16:11 #8
Avatar billede zzzzzzzzzz Nybegynder
19. marts 2005 - 16:14 #9
DEN melder fejl ved IDI_MYICON ICON "menu_one.ico"
har sat dette øverst:

#include <windows.h>

#define IDR_MYMENU 101
#define IDI_MYICON 201

#define ID_FILE_EXIT 9001
#define ID_STUFF_GO 9002

også dette nederst:
IDI_MYICON ICON "menu_one.ico"
Avatar billede arne_v Ekspert
19. marts 2005 - 16:22 #10
Øh.

De 4 defines skal i en .h fil og den sidste skal i en .rc fil
Avatar billede zzzzzzzzzz Nybegynder
19. marts 2005 - 16:22 #11
kan du ikke lige hurtigt lave sådan den tager icon.ico ind i min kode ovenover, så er du sød kan ikke noget c++. :)
Avatar billede zzzzzzzzzz Nybegynder
19. marts 2005 - 16:32 #12
plz arne
Avatar billede arne_v Ekspert
19. marts 2005 - 16:40 #13
Det er ikke bare lige noget man gør.

Tag http://www.winprog.org/tutorial/ fra start til slut stille og roligt.

Det tager tid at lære C++ GUI.
Avatar billede zzzzzzzzzz Nybegynder
19. marts 2005 - 16:44 #14
ehm hvorfor har jeg ingen resource.h fil i include?
Avatar billede arne_v Ekspert
19. marts 2005 - 17:13 #15
Det er en man selv skal lave
Avatar billede nlf Nybegynder
19. marts 2005 - 17:49 #16
En "lille" side du helt sikkert får brug for senere: http://www.msdn.com ;-)

Et lille råd: Lær først det mest basale ved C++, så du i det mindste ikke får problemer med det, for Win32 API'et kan sagtens være et helvede i sig selv...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester