Rencontre Windows Form : Compte Rendu.
Compte rendu des rencontres Windows Forms
Ce jeudi 16 juin s’est tenus à Lyon les rencontres Windows Forms pas Mitsufu Furuta
et Nicolas Clerc. Avec Orion nous
avons pu nous y rendre, voici un petit compte rendu pour ceux qui n’ont pas pu assister
à cette rencontre.
Voici l’agenda de cette après midi bien chargé.
- 13h15 : Présentation .Net / Interopérabilité
- 14h15 : Windows Forms, les concepts
- 15h30 : Pause
- 16h00 : Windows Forms, IHM avancée
- 17h15 : Visual Studio : création de composants
- 17h45 : Questions/Réponses
I. Présentation de .net et interopérabilité
Tout d’abord Mitsu nous a très rapidement parlé de Click Once, puis ensuite nous
a rappelé les bases du .net Framework, rien de nouveau si vous allez au conférence
Microsoft. Par contre Mitsu a appuyé sur un point méconnu, c’est que Microsoft .net
est gratuit, et que ca utilise des standards soumis à l’ECMA etc…
Puis on a eu le droit à un magnifique Hello Word ;)
Ensuite une partie d’interop entre les mondes COM et .net présenté par Nicolas.
Tout d’abord une démo sur le chargement de composant com en .net et la j’ai découvert
qu’il y avait deux façons de faire, la méthode statique avec l’attribut DllImport
mais aussi une méthode dynamique. En quelques mots, si vous faites appel plusieurs
fois à votre dll dans un programme mieux vaut utiliser la méthode statique, c’est
une question d’optimisation de la mémoire. Pour moi qui fais quasi que du web, j’ai
faite une découverte ;)
Deuxième démo, c’était dans le sens contraire, utilisé un composant .net dans un
environnement VB6, et la aussi quelques petits trucs intéressants.
II. Windows Forms : les concepts
Dans cette session, on a surtout parlé de handles, tout les contrôles de Windows
sont des fenêtres, et disposent donc de handle propre, et chaque fenetre dialoguent
via des messages.
La première démo "CreateParams & WndProc" consistait à créer un control dérivant
de panel, en lui rajoutant simplement la barre de titre puis la possibilité de déplacer
le panel à l’intérieur de la fenêtre mère, ceci tout simplement en faisant croire
à Windows que le panel devait se comporter comme une fenêtre. La démo a continué
sur la facon de faire croire à Windows croit qu’on est sur le barre de titre lorqu'on
clique dans la form pour la faire déplacé...
La démo suivante « SendMessage » nous a permis de récupérer les handles de chaque
fenêtre sur lequel passait la souris est ainsi de récupérer son titre etc… et plus
loin dans la session une miniature de cette fenêtre, c’est la même astuce utilisé
par le powerToys
Alt tab replacement qui permet d’avoir des miniatures lors des Alt+Tab
Ensuite demo « TabControl sans onglet » c’est un control pour faire des Wizard héritant
de TabControl.
vous avez le détail de cette démo ici :
techheadbrothers.com
Maintenant un petit tour du coté de GDI+ Mitsu nous a montré quelques applications
assez sympa, pourquoi certaines fois on a des applications avec un fond blanc, un
programme starField avec des étoiles qui défile ... On a surtout regardé le fonctionnement
de l’événement paint.
III. Pause
Histoire de s’aérer un peu, la clim ne fonctionnant pas, ca nous a fait prendre
l’air et donner l’occasion de faire un brin de causette avec Orion.
IV. Windows Forms / IHM Avancés
Dans cette session, on a regardé comment faire l’interface d’une application dans
le détail, dans un premier temps, on a construit l’interface d’un « outlook » avec
la création d’un UserControl héritant de label pour avoir une couleur de fond en
dégradé. Egalement une page d’option avec l’excellent mais méconnu contrôle PropertyGrid.
Dans cette partie on a également vu les avantages de Visual Studio 2005 !
Puis Mitsu nous a fait un petit blabla sur XAML et contrairement à toute entente
on n’a pas eu de démo :( mais mieux encore :). Pour l’instant ce qu’on voit de XAML
c’est surtout la partie graphique géré par DirectX.
Dans cette session Mitsu à décider de montrer que XAML avait aussi comme avantage
de mettre tous les attributs tel que le titre, la localisation des contrôles dans
la form etc dans du XML …
Nous avons eu le droit a une appli relativement complexe qui était « chargé » par
du XML, je dois l’avouer que je n’ai pas compris tous ce qu’il a fait, mais pour
ceux que ca intéresse, je vous conseil d’aller voir les sources des démos.
V. Visual Studio : création de composants
Ici on a vu quelques conseils pour la créations de composants, notamment sur les
points suivants
- Propriétés, évènements, attributs
- Initialisation
- Collections
- Accès aux données
- Editeurs de propriétés
- Editeurs de composants
- CodeDom et sérialisation de code…
Les différents points abordés était surtout des trucs & astuces, des pièges à éviter
etc… j’ai beaucoup apprecié la partie sur le codeDom. Le plus simple est de regarder
les sources et ainsi voir les astuces de Mitsu
Conclusion de cette rencontre.
J’ai beaucoup apprécié ces rencontre malgré que je ne fasse très rarement du Windows.J’ai pu découvrir certains points utile, et ca m’a même donné envie d’essayer de
faire quelques applications Windows.
les slides et les démos des rencontres windows forms sont dispo sur le blogs de Mitsu
Pour informations nous étions 78 dans la salle.