Domanda

Perché non v'è un designer per le forme API native in Visual Studio? Simile a Delphi? Se esistono alcuni programmi, strumenti, ecc, si prega di consulenza.

Qual è l'approccio migliore per progettare le finestre complesse API puro?

È stato utile?

Soluzione

Questo è probabilmente perché non esiste un modo standard di fare layout di controllo in WinAPI, si deve gestire da soli. Non esiste una base di classe "Control" in WinAPI -. Tutto è una finestra di qualche tipo, quindi non c'è modo di sostenere le loro differenze con un comune editor di layout di / designer

È possibile comunque creare il layout della finestra in una finestra ridimensionabile e renderlo da soli o con metodi pubblicati su CodeProject ( questo o questo - entrambi sono MFC-correlati, ma questo è abbastanza facile da tradurre).

ScreenLib alle vostre esigenze del desktop .

Altri suggerimenti

C'è editor di ressource per le finestre di dialogo, e poi c'è il codice. Non ho mai perso un po 'di strumento di progettazione visiva, anche se alcuni migliore supporto dai comandi stessi sarebbe bello.

Il problema principale è il livello di astrazione: utilizzando solo comandi Win32, la progettazione di una GUI complesso ha bisogno di qualche accortezza, ed i comandi tutti hanno leggermente diverse stranezze, capacità e caratteristiche. Non hanno un'interfaccia comune che può essere utilizzato per costruire un designer sulla parte superiore.

WinForms è stato progettato da zero con il supporto di design in mente, e si vede. La preoccupazione principale di progettazione di controlli Win32 era ingombro di memoria di codice e dati.

Anche MFC (che mostra ancora molti segni di scarsità di memoria) non astrae queste stranezze via abbastanza bene da giustificare un decente forme di design.

Tutti gli ambienti che vengono con un editor di forme decente (ricordo Watcom ++ / Optima, zinco e abbastanza alcuni altri che ho dimenticato i nomi di) anche venire con una libreria di forme decente con un alto livello di astrazione.

Poi, c'è il problema delle modifiche. Quale dovrebbe essere l'uscita del progettista? Si potrebbe sparare per un file di dati XML, ma sarebbe aggiungere una dipendenza di alcune grandi librerie per la vostra applicazione nativa - non ha molto senso. O si crea il codice, ma C / C ++ non è adatto a questo. Un altro formato binario? Faresti limiti a ciò che il progettista consente.


Alla fine, il progettista avrebbe dovuto prendersi cura di ogni controllo separatamente, e ancora non si poteva isolare dal conoscere i controlli ei meccanismi delle finestre dentro e fuori. Non è mai stato intrapreso quando C ++ è stata la prima scelta per lo sviluppo su larga scala del desktop. L'aggiunta è oggi , quando ci sono - forse -. Le scelte migliori, sarebbe una mossa piuttosto stupida

E 'a causa di Microsoft. Hanno già spostato verso dotNet e C #. Visual Studio 2005 ha editor di interfaccia grafica piacevole per coloro. Perché è necessario utilizzare l'API puro?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top