11
votes

WPF avec C ++, est-ce possible?

J'ai mon programme principal en C ++, mais je dois maintenant créer une belle application et je sais que WPF est facile et fait pour de belles applications. WPF fonctionne-t-il avec C ++ ou C # et C ++? (Si oui, comment?) Est-ce que WPF est la meilleure chose pour moi?


1 commentaires

Cela ne vous aidera pas avec les fenêtres actuelles, mais on dirait que W8 aura du bon support Native C ++ pour FANCY GUIS: arstechnica.com/microsoft/news/2011/06/...


3 Réponses :


14
votes

Vous pouvez utiliser WPF dans un projet géré C ++, mais vous ferez mieux de garder votre C ++ dans un assemblage séparé et de la référencer à partir d'un projet C # ou VB WPF.


4 commentaires

Merci pour votre réponse. Je suis un peu un noob :) Alors, comment puis-je le faire facilement? Avez-vous un bon tutoriel ou pouvez-vous me dire comment faire parce que j'ai trouvé de nombreux tutoriels en C # et WPF, mais je n'ai pas trouvé quelque chose pour C ++ et WPF.


Il n'y a pas de tutoriels sur C ++ et WPF car WPF est moderne et fonctionne mieux avec une langue moderne comme C #. Donc, comme je le disais, créez votre interface utilisateur WPF à l'aide de C #, puis de référence à votre assemblage C ++. Voici un exemple de comment utiliser dllimport : DotNetperLs.com/dllimports


Je devrais donc créer un projet de bibliothèque de classe en C ++ avec Visual2010, pour créer mes DLL et utiliser cette DLL dans ma deuxième application en C #? C'est ça? Ou ce n'est pas ce genre de projet peut être pour C ++?


Le projet de bibliothèque de classe en C ++ créera une dll gérée C ++ DLL. Dllimport utilisera un native C ++ existant. Cela dépend de votre code. Assurez-vous de comprendre la différence entre le premier et le native C ++ d'abord.



5
votes

Oui, vous pouvez développer une interface graphique en utilisant le framework WPF dans Géré C + ou C ++ / CLI. Mais ils ne sont pas standard c ++, mais pas la plate-forme inter-plate-forme.

Si vous voulez juste une interface graphique pour votre application écrite en C ++, alors vous pouvez essayer Qt aussi. L'avantage en Qt est que c'est complètement en C ++. Non Microsoft géré C ++. Le deuxième avantage est que sa boîte à outils croisée. Cela signifie que vous pouvez lancer votre application sous Windows, Linux, Mac, et sur d'autres machines.

Regardez sa documentation


5 commentaires

Qt peut créer des graphiques rapides? Je travaille sur une application financière afin que mes graphiques auront quelque chose comme 5k de points et de lignes afin que quelque chose de fluent sera doux. :)


@Nazka: QT créera beaucoup plus vite que WPF, croyez-moi.


@Nazka: Téléchargez simplement la boîte à outils, sa taille très petite; ne prendra pas beaucoup de temps pour télécharger. Téléchargez et voyez ses exemples de démonstration fournis avec la boîte à outils elle-même. Ils sont très jolis et cool.


Qt Creator et Qt Designer sonne bien. :) Je vais loin de ma première question, mais à Qt, il est facile de construire pour une barre d'option d'exemple avec une liste de chaîne? Edit: oui je vais essayer qt


@Nazka: QT est une boîte à outils très très mûrie. Vous pouvez faire n'importe quoi avec elle. Aussi, c'est facile. Il a même une langue déclarative comme WPF. Donc, tout devient très facile et le développement peut être très rapide.



-5
votes

WPF est mort avec Silverlight, rappelez-vous que MS dit son HTML5 uniquement à partir de maintenant sur :)

Utiliser WPF dans votre application C ++ peut être obtenu en utilisant Hwndsource , mais ce n'est pas la solution optimale, car vous devrez créer une application C # ou VB.net GUI, et utilisez-la pour communiquer avec votre application C ++ via une forme d'IPC.

Il existe des alternatives, probablement le meilleur est d'écrire votre interface graphique en utilisant Qt , qui est très bien respecté. Vous pouvez obtenir des fonctionnalités similaires à WPF en écrivant à l'aide de qml Parallèches à côté de l'ancien système basé sur des formes (ce qui signifie que vous obtenez toute la vitesse de développement de l'utilisation des anciennes boîtes de texte ennuyeuses, ainsi que l'interface graphique de fantaisie, et l'interface graphique fantaisie de l'utilisation du nouveau système d'interface utilisateur déclarative, le tout dans le même système. Doux) .

Bien sûr, une option décente consiste à rendre votre application dans un processus de serveur d'extrémité arrière et à l'appeler à partir d'un UI HTML5 basé sur le serveur Web. C'est une preuve très future, facile à déployer avec les clients et aussi moderne que vous êtes susceptible d'obtenir.


10 commentaires

Dans votre dernière solution, l'objectif est de créer un site Web? Ou un service Web? Quel est le meilleur outil pour avoir une interface entre mon application C ++ et un site Web? (Juste une bonne base de données avec MySQL peut être?)


WPF + SL Dead? Citez vos sources, s'il vous plaît, car à ce stade qui est juste une rumeur laide. Si vous projetez simplement, s'il vous plaît, ne faites pas cela comme si c'était un fait.


@DJDANLIB: C'est une rumeur que vous seriez conseillée de continuer à écouter comme ce n'est pas exactement totalement non fondé. Voici le versement d'aujourd'hui: I-Programmer. Info / News / 81-Général / ... Le problème avec la fumée est que souvent, il y a vraiment un feu en dessous. Cela pourrait ne pas être vrai, mais cela ne signifie pas que vous pouvez l'ignorer complètement.


@Nazka: un site Web - un site qui ne gère pas son code côté serveur dans le serveur Web. Un site Web n'est qu'une autre application, une autre application où l'interface graphique vit dans le navigateur au lieu d'être dirigée directement. Vous devez être capable d'appeler des méthodes dans votre application C ++ d'une certaine manière à partir d'un code WebServer, mais cela pourrait être n'importe quoi - socket, RPC, ligne de commande même - mais il a besoin d'un moyen d'exposer des méthodes qu'un client peut appeler.


Je l'ai suivi de près et Microsoft n'a dit rien de tel - en fait, ils disent tout à fait le contraire. Vous n'avez pas besoin de ne pas regarder plus loin que le président de la division Server & Tools de Microsoft: Team.Silverlight. Net / Annonce / PDC-and-Silverlight - mais si vous voulez bien regarder, essayez Scott Guthrie: weblogs.asp.net/scottgu/archive/2010/11/04/... ... conviendons de suivre la question à la nôtre, alors Nous n'entrons pas dans un argument et que les choses vont plus de sujet.


WPF est vivant et bien en 2019 et au-delà. Voir docs.microsoft.com/en-us/dotnet/desktop -WPF / Vue d'ensemble / Index


@Scotthutchinson Ils ont toujours WinForms Docs aussi. Regardez en arrière sur Djdanlib disant le "+ Sl Dead?". Personne ne voulait voir mon petit smiley cependant, oh bien.


Non, je n'ai pas remarqué le smiley. Peut-être envisageriez-vous d'éditer votre réponse pour la rendre moins trompeuse en 2019.


@Scotthutchson ou peut-être que vous pourriez lire la réponse dans son totalement au lieu de suggérer que je suis en faute.


Clairement, votre réponse est parfaite comme c'est tout. Personne n'a le droit de suggérer le contraire. Ne touchez pas ça.