2009-03-06 15 views
10

Qualcuno conosce un libro o un'esercitazione che spiega Qt per sviluppatori Delphi/C++ Builder/VCL?Qt per gli sviluppatori Delphi

Quale sarebbe l'approccio migliore per uno sviluppatore con quel background per imparare Qt? Sono particolarmente interessato a come realizzare cose che so fare in Delphi con Qt.

Ad esempio, qual è l'equivalente Qt di Delphi Frames? Che dire dell'ereditarietà di Forms/Frames? Dovrei usare Qt Designer, Qt Creator o il codice mano per tali compiti?

Un'altra cosa è Qt Widget e il ciclo di vita degli oggetti. Qt si prende cura della distruzione di oggetti e oggetti o spara al programmatore di farlo manualmente? O può essere che Qt lo fa per alcuni tipi di oggetti ma non per altri tipi?

Come nota a margine, conosco il C++, quindi il linguaggio in sé non è un problema. Sono preoccupato per la biblioteca.

risposta

2

il modo più semplice e veloce per imparare qualcosa di nuovo è mettere da parte tutte le vecchie cose. non provare a pensare in Delphi quando si sviluppa in C++.

prima imparare un po 'di C++ (non è difficile, davvero) quindi scegliere Qt. non devi sapere TUTTO di C++ e STL per ottenere velocità con Qt, basta familiarizzare con la sintassi e concetti fondamentali (come puntatori, strutture contro classi, questo genere di cose).

+0

Conosco il C++ quindi non è un problema per me. Quello che voglio è imparare la mappatura tra la mia conoscenza della VCL e Qt. – user16120

+0

questa è la parte sbagliata. non cercare la mappatura, vai per la cosa reale – Javier

2

Per approfondire quello che dice Javier: i concetti da un toolkit di finestre a un'altra mappa sono ancora meno utili delle lingue. È particolarmente confuso poiché ci sono solo tante parole (frame, finestre, widget, ecc.) Che vengono riutilizzate.

Vorrei passare attraverso gli esempi (eccellenti) e le esercitazioni incluse nella distribuzione QT (potrebbe essere necessario scaricare il dist originale) e poi pensare - come avrei fatto in VCL?

7

Un modo potrebbe essere quello di studiare la sorgente per il FreeCLX open source project. Contiene un'implementazione del VCL usando Qt. Quindi, se sei curioso di sapere quale widget Qt mappa su un tipo VCL, questo dovrebbe farti strada. Si noti, tuttavia, che Qt 2.x.x ha utilizzato l'ereditarietà multipla (non più vera nella Qt corrente), quindi FreeCLX si interfaccia a Qt tramite una libreria speciale per appiattirla.

+2

"Nota, tuttavia, che Qt utilizza l'ereditarietà multipla" Non è più così vero. L'ultima versione di Qt (4.5.0) ha eliminato molti MI che erano nella serie Qt 2.x.x su cui era basato CLX. –

+0

Grazie, Allen; Non lo sapevo Aggiornerò il post –

+1

Anche LCL Lazarus. per QT4. –

2

Se ricordo male, Qt Assistant ha alcune buone esercitazioni per principianti, che ti guidano attraverso la struttura di base di un'applicazione per la GUI Qt sempre più complessa. Inoltre, viene introdotta la gerarchia padre/figlio, il sistema di eventi signal/slot, entrambi elementi chiave per la comprensione delle applicazioni Qt.

Sono con gli altri che dicono di non provare a mappare metafore Delphi a metafore Qt. Tuttavia, probabilmente troverai molte somiglianze lungo il percorso in cui la tua esperienza Delphi ti darà una prospettiva.

Buona fortuna!

MODIFICA: QtCentre è il miglior forum online per lo sviluppo Qt secondo me. Troverete molte persone esperte lì.

Problemi correlati