Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1

    [c/c++] creare una finestra di interfaccia MAC

    salve a tutti dopo 2 settimane di intenso lavoro con python ho deciso di inserirmi nel mondo del C/C++ oggi è il mio primo giorno ma ho già messo il turbo

    ho già fatto molte prove con il terminale VOGLIO precisare che uso MAC per esattezza Xcode ma credo che in generale non cambi molto

    allora ho fatto molte prove tra qui la più banale che è quella del hello world mi sono già stufato con il terminale vorrei passare alla grafica ora ma senza un GUI.
    sono appassionato a realizzare l'interfaccia via codice non mi piace usare dei programmi che me la fanno (o son fatto così mi piace complicarmi la vita in questo sono un professionista)

    con il python mi riusciva molto semplice creare una semplice finestra esempio 640x480
    come posso fare con c o C++ ho visto che devo importare "windows.h" ma l'editor di testo me lo riconosce come errore

    spero di non aver sparato enormi cavolate come al solito

  2. #2
    Utente di HTML.it L'avatar di shodan
    Registrato dal
    Jun 2001
    Messaggi
    2,381

    Re: [c/c++] creare una finestra di interfaccia MAC

    Originariamente inviato da il mandorlone
    ...oggi è il mio primo giorno ma ho già messo il turbo
    Meglio se togli il turbo e inserisci la retromarcia.

    ...VOGLIO precisare che uso MAC per esattezza Xcode...
    A meno che Microsoft acquisti Apple o viceversa, la vedo dura usare:
    "windows.h"
    in ambiente MAC.
    This code and information is provided "as is" without warranty of any kind, either expressed
    or implied, including but not limited to the implied warranties of merchantability and/or
    fitness for a particular purpose.

  3. #3
    fin li l'avevo capito anche io che non posso usare "windows.h" per gli stessi motivi
    e per questo che vi chiedo cosa devo fare
    per chi conosce solo librerie per linux che si esprima ho anche quello
    poi se sapete come fare con mac mi farebbe anche piacere grazie

  4. #4
    in pratica faccio prima a chiedere il codice per creare una finestra in c per:
    LINUX e MAC quale è la differenza cosa cambia?

  5. #5
    Utente bannato
    Registrato dal
    Apr 2012
    Messaggi
    510
    Cambia la shell, che è leggermente diversa ma non è la sola differenza.
    A farla breve se usi Mac Os invece che un sistema Linux hai una marea di comodità in più.
    Ma nulla ti vieta di installare una macchina virtuale con virtual box e metterci Windows 7, per usare sia Mac Os che windows (come ho fatto io).
    Se vuoi creare una GUI hai due opzioni:
    -Sempre in C/C++ da xcode includi il framework GLUT e OpenGL e ti metti a creare una finestra (capiti a fagiolo e se vuoi un codice di esempio te lo posso mostrare);
    -Cambi linguaggio e passi a studiare Objective-C, dove creare una GUI è molto molto ma molto (fai finta che l' ho detto 10 volte ) più facile.

    In realtà le opzioni non sono soltanto due, ci stanno anche altri framework e altri linguaggi a disposizione.

  6. #6
    ho 3 computer e 1 mac in tutta la casa ti sembro tipo che installa windows quello è l'ultima cosa che farò e ne vado fiero... lo so anche io che con parallels bastano 2 clik l'ho fatto con ubuntu dato che in più mi serviva sempre a portata di mano oltre al dualboot

    tornando a noi che codice uso allora con puro c su mac?
    OpenGl non ci ho mai lavorato come dovrei fare?

    se faccio l'interfaccia in OpenGl dopo lo stesso codice funziona su linux?

  7. #7
    Utente bannato
    Registrato dal
    Apr 2012
    Messaggi
    510
    ho 3 computer e 1 mac in tutta la casa ti sembro tipo che installa windows quello è l'ultima cosa che farò e ne vado fiero [...]
    Dal nome non avrei saputo intuirlo
    Il porting su linux lo puoi fare facilmente.
    Per includere il framework basta che crei un progetto in C/C++, clicchi sul progetto e selezioni il nome del progetto su "TARGETS", clicchi su "link libraries", a quel punto clicchi sul simbolo "+" in basso, e aggiungi i framework OpenGL e GLUT.
    Tanto per non farti partire con un segmentation fault ecco un esempio di codice che inizializza la finestra con GLUT:

    codice:
        glutInit(&argc,argv);                                         
        glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);   
        glutInitWindowSize(600, 600);  // Finestra 600x600
        glutCreateWindow("Nome finestra");  
        glutDisplayFunc(render);   // puntatore alla funzione che disegna la finestra
        glClearColor(1.0, 1.0, 1.0, 1.0);
        glClear(GL_COLOR_BUFFER_BIT);
        glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);
        glutMainLoop();  // Da questo momento in poi viene eseguita la funzione render
        // void render(void) che disegna il buffer
    Ma da qui in poi bisogna che inizi a studiare su un libro.

  8. #8
    Se vuoi creare GUI multipiattaforma in maniera relativamente semplice la cosa più sensata da fare è usare un toolkit grafico, ad esempio le wxWidgets o le Qt.
    Amaro C++, il gusto pieno dell'undefined behavior.

  9. #9
    ciao grazie ho provato ora e mi sono bloccato.. sono arrivato a link binary whit libraries non trovo il +
    ma quindi ora devo seguire delle guide OpenGL per la grafica??
    e dove scrivo il codice che mi hai dato in surce-main??
    scusa ma è la prima volta che mi ci metto nel OpenGl

  10. #10
    anzi forse adesso ci sono riuscito ho apperto una lunga lista e ho inserito OpenGl e GLUT
    ho provato a scrivere il codice così come me l'ho hai dato sul file main ma ogni singola riga era un errore cosa sbaglio ?

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 © 2025 vBulletin Solutions, Inc. All rights reserved.