Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18
  1. #1
    Utente di HTML.it L'avatar di bart87
    Registrato dal
    Apr 2004
    Messaggi
    184

    [C++]C++ e le API Win32

    Ciao a tutti, sono nuovo del c++ e uso devc++ come compilatore.
    Ho letto una guida online sul'uso delle API win32, ma non riesco a capire come usare i file di risorse (.rc), infatti se tento di compilare un progetto che contenga un dialogo del tipo DialogBoxParam con i parametri nel file .rs, mi compila il file, ma eseguendolo non fa assolutamente nulla.
    Ho provato ad includere il file .rs con #include ma mi dà degli errori di sintassi..
    Non so che fare!
    Nunc Bibendum est!

  2. #2
    Utente di HTML.it L'avatar di Xadoom
    Registrato dal
    Dec 2002
    Messaggi
    1,491
    Quello che devi fare non è inclidere i .rc con #include, ma inclderlo nella compilazione del progetto: vai su OpzioniProgetto ->Files seleziona il .rc e spunta la casella "includi nella compilazione"
    Così dovrebbe andare.
    Windows Xp
    [Java]
    [PHP]Notepad++
    [Fortran90-77] elf90 g77
    [C++ /WinAPI] DevC++ VisualC++

  3. #3
    Utente di HTML.it L'avatar di bart87
    Registrato dal
    Apr 2004
    Messaggi
    184
    grazie 1000!!!!
    Nunc Bibendum est!

  4. #4
    Utente di HTML.it L'avatar di Xadoom
    Registrato dal
    Dec 2002
    Messaggi
    1,491
    Di nulla...
    Windows Xp
    [Java]
    [PHP]Notepad++
    [Fortran90-77] elf90 g77
    [C++ /WinAPI] DevC++ VisualC++

  5. #5
    Utente di HTML.it L'avatar di bart87
    Registrato dal
    Apr 2004
    Messaggi
    184
    nuovo problema, sto cercando di fare uno stupidissimo conbtatore di click, ho creato un elemento static e sto cercando di gestire il messaggio in questo modo:
    codice:
    if(uMsg==WM_COMMAND) {
            WORD wNotifica = HIWORD(wParam);
            WORD wId = LOWORD(wParam);
            if(wNotifica == STN_CLICKED && wId == 101) {
                    HWND hStat = (HWND)lParam;
                    char buff[1];                
                    SendMessage(hStat, WM_GETTEXT, 1, (LPARAM)buff);
                    int cont = *buff;
                    cont++;
                    const int* cont1 = NULL;
                    cont1 = &cont;                               
                    SendMessage(hStat, WM_SETTEXT, 0, (LPARAM)cont1);
                    return TRUE;
            }
    ma non funziona, cosa sbaglio?
    Nunc Bibendum est!

  6. #6
    Utente di HTML.it L'avatar di Xadoom
    Registrato dal
    Dec 2002
    Messaggi
    1,491
    Scusa, ma mi pare un pò incasinata la cosa....io apporterei queste modifiche:
    codice:
    if(uMsg==WM_COMMAND) {
        WORD wNotifica = HIWORD(wParam);
        WORD wId = LOWORD(wParam);
        char buff[10];
        int cont;
        if(wNotifica == STN_CLICKED && wId == 101) {
             GetWindowText((HWND)lParam,buff,10);                
             cont = atoi(buff);
             cont++;
             wsprintf(buff,"%i",cont);
             SetWindowText((HWND)lParam,buff,10);
           }
    Mi pare più chiaro, mi spiace ma non ho avuto il tempo di testarlo, ci potrebbe essere qualche errore, fammi sapere....ti ricordo che un elenco di tutti i meto di delle API lo trovi qui:
    http://msdn.microsoft.com/library/de...ical_order.asp
    Fammi sapere.
    Windows Xp
    [Java]
    [PHP]Notepad++
    [Fortran90-77] elf90 g77
    [C++ /WinAPI] DevC++ VisualC++

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    92
    Scusa Xadoom, anch' io come bart87 ho iniziato a studiare le Api win32, e nn capito xkè bisogna compilare sempre il file .RC..
    Senza di esso nn si può fare niente??
    xkè x fare questo nn occorre:

    codice:
    #include <windows.h>
    
    int WINAPI
    WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nCmdShow)
    {
        MessageBox(0, "Hello World!", "Messaggio al mondo", MB_YESNO | MB_ICONQUESTION);
        return 0;
    }
    Altro nn si può fare??
    Voglio capire questo...
    Grazie
    bye
    Peppe

    Ps. scusa bart87 se ti interrompo, ma devo sapere... grazie...

  8. #8
    Utente di HTML.it L'avatar di bart87
    Registrato dal
    Apr 2004
    Messaggi
    184
    tranquillo
    Per il file .rc serve se vuoi fare dei dialoghi personalizzati che non siano già definiti..
    Grazie ancora Xadoom, funziona, hai solo messo un parametro di troppo qui:
    codice:
    SetWindowText((HWND)lParam,buff,10);
    Il 10 va tolto..
    Nunc Bibendum est!

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    92
    Scusa Bart puoi spiegarmi meglio?? nn ho capito, scausa la mia ignoranza ma sono agli inizi... tnx

  10. #10
    Utente di HTML.it L'avatar di Xadoom
    Registrato dal
    Dec 2002
    Messaggi
    1,491
    X Bart, sono contento funzioni, in effetti il codice l'ho scritto a memoria senza andare a guardare la documentazione ed un errore ci può stare!

    XPeppe: I file resource (.rc) sono file in cui "elenchi" delle risorse aggiuntive PERSONALIZZATE che vuoi utilizzare nel programma, generalmente queste "risorse" sono menu, dialog, immagini, icone,....comunque puoi fare tutto facendo a meno del .rc usando le risorse standard che le API ti mettono a disposizione.
    Spero di averti chiarito un pò.
    Windows Xp
    [Java]
    [PHP]Notepad++
    [Fortran90-77] elf90 g77
    [C++ /WinAPI] DevC++ VisualC++

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.