SlideShare una empresa de Scribd logo
1 de 9
Descargar para leer sin conexión
Generated by Jive SBS on 2014-09-04-05:00 
1 
luc desruelle's Blogue: Les fenêtres LabVIEW 
ne sont pas toutes rectangulaires 
Publié par luc desruelle 13 mars 2014 
0] Introduction 
Il existe sur internet plusieurs exemples, très intéressants, de code LabVIEW pour avoir des 
fenêtres qui ne sont pas rectangulaires. 
Tous les exemples utilisent le même code, qui permet via la dll Windows "user32.dll" 
fonction SetLayerdWindowAttributs, de : 
> rendre transparent l'ensemble des pixels d'une couleur spécifiée de la face-avant ; 
> gérer l'opacité de la fenêtre.
luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires 
Generated by Jive SBS on 2014-09-04-05:00 
2 
http://msdn.microsoft.com/en-us/library/windows/desktop/ms633540(v=vs.85).aspx 
L'intérêt est : 
1. principalement esthétiquepour les spash screen, Cf Wikipédia : la toute première fenêtre affichée par un 
logiciel. Cette fenêtre incite l'utilisateur à patienter pendant le chargement et l'installation d'un logiciel tout 
en lui apportant diverses informations comme le nom du logiciel, le nom de l'éditeur, le logo de l'éditeur ou 
du logiciel, les droits d'auteur associés au logiciel, la version et l'état du chargement du logiciel. 
2. insérer des fenêtres "particulières" 
3. opacité, afin de permettre une comparaison par superposition de plusieurs fenêtres 
Je vais montrer un exemple avec ma photo suivante
luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires 
Generated by Jive SBS on 2014-09-04-05:00 
3 
I] Certains codes incomplets 
Certains exemples sont incomplets, car ils ne fonctionnent qu’avec des « jeux » 
de couleurs particuliers. 
Le problème provient de la différence de gestion des couleurs entre LabVIEW et Microsoft : 
RGB VS BGR >>> COLORREF value has the following hexadecimal form : 0x bbggrr 
Par exemple http://forums.ni.com/t5/LabVIEW/Darren-s-Weekly-Nugget-04-17-2006/m-p/ 
352929?vie w=by_date_ascending#M179807 
ou le très bon post de DaHelmut
luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires 
Generated by Jive SBS on 2014-09-04-05:00 
4 
II] Rendre Transparent Des Pixels - Fonction Set Window 
Color To Transparent 
D’autres exemples sont très complets, et fonctionnent avec toutes les couleurs, 
car ils convertissent la couleur RGB de LabVIEW en BGR pour Windows 
Par exemple une référence : https://decibel.ni.com/content/blogs/ 
labviewramblings/2013/11/30/groovy-splash-s creen 
Je ne sais pas qui est la première personne à avoir réalisé le code. J'ai réalisé un vi modifié, 
avec la documentation du code et en intégrant directement le Get Window Handle.vi
luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires 
Generated by Jive SBS on 2014-09-04-05:00 
5 
Pour utiliser le code il faut ouvrir la référence du vi via puis 
par exemple
luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires 
Generated by Jive SBS on 2014-09-04-05:00 
6 
La fenêtre est alors transparente mais ... avec une bordure! 
III] Une fenêtre sans bordure 
La transparence ne va pas suffir. En effet la fenêtre a encore la bordure. Il faut modifier les 
options de la fenêtre pour avoir 
devient 
La fenêtre n'est plus rectangulaire! Mais n'est plus une fenêtre, car comment la fermer? 
IV] Fermer la fenêtre sans bordure 
il faut ajouter un bouton "croix" pour fermer... 
Toutes les formes sont possibles.
luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires 
Generated by Jive SBS on 2014-09-04-05:00 
7 
Même un "Petit poisson" voir le code en PJ 
Luc Desruelle | 
| Voir mon profil 
CLA : Certified LabVIEW Architect / Certifié Architecte LabVIEW 
CLD : Certified LabVIEW Developer / Certifié Développeur LabVIEW 
Contact , About me. , Google+. , Twitter. 
Pièces jointes: 
• Poisson.vi (53.2 K) 
• Luc IHM Set Window Color to Transparent.vi (27.8 K) 
304 Visualiser Tags : labview, code, france, transparent, opacity, window, transparency, pixels, desruelle, 
certifié, développeur, luc, face-avant, developpeur, chambery, rhône-alpes, avoir, fenêtres, rectangulaires, 
setlayerdwindowattributs, layered, rendre, ronde, certifiée, chambéry, anncey 
22 mars 2014 14:47 djaune 
Bonjour,
luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires 
Generated by Jive SBS on 2014-09-04-05:00 
8 
j'ai regardé avec attention votre post sur les fenêtres non rectangulaires, merci pour ce 
travail. 
Je voudrais bien une précision sur un point qui me surprend un peu : même sans exécuter 
le VI, le poisson est déjà animé... 
j'avoue que je ne sais pas comment on parvient à ce résultat ! 
car l'objet est une simple commande U16 ???? (comment associer cette commande avce un 
gif animé par exemple???) 
Merci d'avance pour une brève explication, 
23 mars 2014 16:23 luc desruelle djaune en réponse à 
Bonjour et merci. L’objet est un pictures Ring ou menu déroulant d’images, qui 
représente une ou plusieurs images, et il est possible d’insérer un GIF animé. Ce 
type de contrôle est un entier, la valeur indiquant le numéro de l’image dans le 
menu déroulant. 
plus d'infos sur le lien 
Un GIF animé pour éviter de faire du code 
A+ 
15 avr. 2014 18:26 DaHelmut 
Très bonnes explications Luc 
J'avoue que j'ai jamais fait attention au point que tu soulignes entre couleur RGB de 
LabVIEW et BGR de Windows ! Bon a savoir ! J'ai toujours utilisé la même couleur jusqu'à 
présent et ça a toujours fonctionné
luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires 
Generated by Jive SBS on 2014-09-04-05:00 
9 
J'aime bien cette technique pour simuler des tableaux de bord dans l'automobile et 
l'agricole. 
Kudos ! 
++ 
16 avr. 2014 02:05 luc desruelle DaHelmut en réponse à 
Salut DaHelmut, Il est vrai que ton exemple était super sympa !

Más contenido relacionado

Destacado

Livre LabVIEW 2015 : Programme et Applications
Livre LabVIEW 2015 : Programme et ApplicationsLivre LabVIEW 2015 : Programme et Applications
Livre LabVIEW 2015 : Programme et Applications
Luc Desruelle
 
Livre LabVIEW : Programmation et applications
Livre LabVIEW : Programmation et applicationsLivre LabVIEW : Programmation et applications
Livre LabVIEW : Programmation et applications
Luc Desruelle
 
Colaimo 140330083749-phpapp01
Colaimo 140330083749-phpapp01Colaimo 140330083749-phpapp01
Colaimo 140330083749-phpapp01
Mss Med
 
Le télétravail chez Siemens au Luxembourg
Le télétravail chez Siemens au LuxembourgLe télétravail chez Siemens au Luxembourg
Le télétravail chez Siemens au Luxembourg
Nicole Turbé-Suetens
 

Destacado (20)

Pictures of the Future Siemens Printemps 2012
Pictures of the Future Siemens Printemps 2012Pictures of the Future Siemens Printemps 2012
Pictures of the Future Siemens Printemps 2012
 
Livre LabVIEW 2015 : Programme et Applications
Livre LabVIEW 2015 : Programme et ApplicationsLivre LabVIEW 2015 : Programme et Applications
Livre LabVIEW 2015 : Programme et Applications
 
Livre LabVIEW : Programmation et applications
Livre LabVIEW : Programmation et applicationsLivre LabVIEW : Programmation et applications
Livre LabVIEW : Programmation et applications
 
Getting started with LabVIEW
Getting started with LabVIEWGetting started with LabVIEW
Getting started with LabVIEW
 
Wincc plant-intelligence
Wincc plant-intelligenceWincc plant-intelligence
Wincc plant-intelligence
 
Certificate of completion
Certificate of completion Certificate of completion
Certificate of completion
 
SCADA Labview PLC TIA portal v13
SCADA Labview PLC TIA portal v13SCADA Labview PLC TIA portal v13
SCADA Labview PLC TIA portal v13
 
Rapport cimat
Rapport cimatRapport cimat
Rapport cimat
 
Colaimo 140330083749-phpapp01
Colaimo 140330083749-phpapp01Colaimo 140330083749-phpapp01
Colaimo 140330083749-phpapp01
 
Rapport de projet de fin d'études - SIEMENS 2016
Rapport de projet de fin d'études - SIEMENS 2016Rapport de projet de fin d'études - SIEMENS 2016
Rapport de projet de fin d'études - SIEMENS 2016
 
Exemple de CV professionnel
Exemple de CV professionnelExemple de CV professionnel
Exemple de CV professionnel
 
Presentation Android
Presentation AndroidPresentation Android
Presentation Android
 
Decodage d'adresse
Decodage d'adresseDecodage d'adresse
Decodage d'adresse
 
Ma présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebMa présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site Web
 
Le télétravail chez Siemens au Luxembourg
Le télétravail chez Siemens au LuxembourgLe télétravail chez Siemens au Luxembourg
Le télétravail chez Siemens au Luxembourg
 
Enquête de trésorerie sur les grandes entreprises et ETI
Enquête de trésorerie sur les grandes entreprises et ETI Enquête de trésorerie sur les grandes entreprises et ETI
Enquête de trésorerie sur les grandes entreprises et ETI
 
La commandite ce n'est pas des vacances
La commandite ce n'est pas des vacances La commandite ce n'est pas des vacances
La commandite ce n'est pas des vacances
 
Satq la commandite humaine
Satq la commandite humaineSatq la commandite humaine
Satq la commandite humaine
 
Summercamp2012(esp)
Summercamp2012(esp)Summercamp2012(esp)
Summercamp2012(esp)
 
Negotiate is not innate
Negotiate is not innateNegotiate is not innate
Negotiate is not innate
 

Similar a Les fenetres-labview-ne-sont-pas-toutes-rectangulaires

Des outils et des hommes
Des outils et des hommesDes outils et des hommes
Des outils et des hommes
boblemarin 2000
 
20131024 qualité de code et sonar - mug lyon
20131024   qualité de code et sonar - mug lyon20131024   qualité de code et sonar - mug lyon
20131024 qualité de code et sonar - mug lyon
Clement Bouillier
 

Similar a Les fenetres-labview-ne-sont-pas-toutes-rectangulaires (20)

Af port view2 - Beginner
Af   port view2 - BeginnerAf   port view2 - Beginner
Af port view2 - Beginner
 
Af vue des portes - Débutant
Af   vue des portes - DébutantAf   vue des portes - Débutant
Af vue des portes - Débutant
 
Des outils et des hommes
Des outils et des hommesDes outils et des hommes
Des outils et des hommes
 
Les Tests : une évolution, pas une révolution
Les Tests : une évolution, pas une révolutionLes Tests : une évolution, pas une révolution
Les Tests : une évolution, pas une révolution
 
Nos trucs et astuces pour construire des produits que les devs adorent chez ADEO
Nos trucs et astuces pour construire des produits que les devs adorent chez ADEONos trucs et astuces pour construire des produits que les devs adorent chez ADEO
Nos trucs et astuces pour construire des produits que les devs adorent chez ADEO
 
20131024 qualité de code et sonar - mug lyon
20131024   qualité de code et sonar - mug lyon20131024   qualité de code et sonar - mug lyon
20131024 qualité de code et sonar - mug lyon
 
Développer en mode kick-ass à Devoxx France
Développer en mode kick-ass à Devoxx FranceDévelopper en mode kick-ass à Devoxx France
Développer en mode kick-ass à Devoxx France
 
Utiliser WP pour l'outillage interne — WP Meetup Nantes - 02/02/2023
Utiliser WP pour l'outillage interne — WP Meetup Nantes - 02/02/2023Utiliser WP pour l'outillage interne — WP Meetup Nantes - 02/02/2023
Utiliser WP pour l'outillage interne — WP Meetup Nantes - 02/02/2023
 
Microsoft07coursbaptiste
Microsoft07coursbaptisteMicrosoft07coursbaptiste
Microsoft07coursbaptiste
 
Comparatif des outils de prototypage
Comparatif des outils de prototypageComparatif des outils de prototypage
Comparatif des outils de prototypage
 
Le test n'est pas (qu')une histoire - agile france 2016
Le test n'est pas (qu')une histoire - agile france 2016Le test n'est pas (qu')une histoire - agile france 2016
Le test n'est pas (qu')une histoire - agile france 2016
 
Le Test Be angels - Spark
Le Test Be angels - SparkLe Test Be angels - Spark
Le Test Be angels - Spark
 
Real Options - Agile France 2013
Real Options - Agile France 2013Real Options - Agile France 2013
Real Options - Agile France 2013
 
Livre LabVIEW avec une introduction à LabVIEW NXG
Livre LabVIEW avec une introduction à LabVIEW NXGLivre LabVIEW avec une introduction à LabVIEW NXG
Livre LabVIEW avec une introduction à LabVIEW NXG
 
Session mons 22 mars
Session mons 22 marsSession mons 22 mars
Session mons 22 mars
 
Real Options Lean Kanban France 2013
Real Options Lean Kanban France 2013Real Options Lean Kanban France 2013
Real Options Lean Kanban France 2013
 
Guide d'utilisation site colibri ville
Guide d'utilisation   site colibri villeGuide d'utilisation   site colibri ville
Guide d'utilisation site colibri ville
 
Comment préparer et bien communiquer un atelier à destination des adolescents...
Comment préparer et bien communiquer un atelier à destination des adolescents...Comment préparer et bien communiquer un atelier à destination des adolescents...
Comment préparer et bien communiquer un atelier à destination des adolescents...
 
Cv2015
Cv2015Cv2015
Cv2015
 
Design systems : Bench et reco sur les outils
Design systems : Bench et reco sur les outilsDesign systems : Bench et reco sur les outils
Design systems : Bench et reco sur les outils
 

Les fenetres-labview-ne-sont-pas-toutes-rectangulaires

  • 1. Generated by Jive SBS on 2014-09-04-05:00 1 luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires Publié par luc desruelle 13 mars 2014 0] Introduction Il existe sur internet plusieurs exemples, très intéressants, de code LabVIEW pour avoir des fenêtres qui ne sont pas rectangulaires. Tous les exemples utilisent le même code, qui permet via la dll Windows "user32.dll" fonction SetLayerdWindowAttributs, de : > rendre transparent l'ensemble des pixels d'une couleur spécifiée de la face-avant ; > gérer l'opacité de la fenêtre.
  • 2. luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires Generated by Jive SBS on 2014-09-04-05:00 2 http://msdn.microsoft.com/en-us/library/windows/desktop/ms633540(v=vs.85).aspx L'intérêt est : 1. principalement esthétiquepour les spash screen, Cf Wikipédia : la toute première fenêtre affichée par un logiciel. Cette fenêtre incite l'utilisateur à patienter pendant le chargement et l'installation d'un logiciel tout en lui apportant diverses informations comme le nom du logiciel, le nom de l'éditeur, le logo de l'éditeur ou du logiciel, les droits d'auteur associés au logiciel, la version et l'état du chargement du logiciel. 2. insérer des fenêtres "particulières" 3. opacité, afin de permettre une comparaison par superposition de plusieurs fenêtres Je vais montrer un exemple avec ma photo suivante
  • 3. luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires Generated by Jive SBS on 2014-09-04-05:00 3 I] Certains codes incomplets Certains exemples sont incomplets, car ils ne fonctionnent qu’avec des « jeux » de couleurs particuliers. Le problème provient de la différence de gestion des couleurs entre LabVIEW et Microsoft : RGB VS BGR >>> COLORREF value has the following hexadecimal form : 0x bbggrr Par exemple http://forums.ni.com/t5/LabVIEW/Darren-s-Weekly-Nugget-04-17-2006/m-p/ 352929?vie w=by_date_ascending#M179807 ou le très bon post de DaHelmut
  • 4. luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires Generated by Jive SBS on 2014-09-04-05:00 4 II] Rendre Transparent Des Pixels - Fonction Set Window Color To Transparent D’autres exemples sont très complets, et fonctionnent avec toutes les couleurs, car ils convertissent la couleur RGB de LabVIEW en BGR pour Windows Par exemple une référence : https://decibel.ni.com/content/blogs/ labviewramblings/2013/11/30/groovy-splash-s creen Je ne sais pas qui est la première personne à avoir réalisé le code. J'ai réalisé un vi modifié, avec la documentation du code et en intégrant directement le Get Window Handle.vi
  • 5. luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires Generated by Jive SBS on 2014-09-04-05:00 5 Pour utiliser le code il faut ouvrir la référence du vi via puis par exemple
  • 6. luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires Generated by Jive SBS on 2014-09-04-05:00 6 La fenêtre est alors transparente mais ... avec une bordure! III] Une fenêtre sans bordure La transparence ne va pas suffir. En effet la fenêtre a encore la bordure. Il faut modifier les options de la fenêtre pour avoir devient La fenêtre n'est plus rectangulaire! Mais n'est plus une fenêtre, car comment la fermer? IV] Fermer la fenêtre sans bordure il faut ajouter un bouton "croix" pour fermer... Toutes les formes sont possibles.
  • 7. luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires Generated by Jive SBS on 2014-09-04-05:00 7 Même un "Petit poisson" voir le code en PJ Luc Desruelle | | Voir mon profil CLA : Certified LabVIEW Architect / Certifié Architecte LabVIEW CLD : Certified LabVIEW Developer / Certifié Développeur LabVIEW Contact , About me. , Google+. , Twitter. Pièces jointes: • Poisson.vi (53.2 K) • Luc IHM Set Window Color to Transparent.vi (27.8 K) 304 Visualiser Tags : labview, code, france, transparent, opacity, window, transparency, pixels, desruelle, certifié, développeur, luc, face-avant, developpeur, chambery, rhône-alpes, avoir, fenêtres, rectangulaires, setlayerdwindowattributs, layered, rendre, ronde, certifiée, chambéry, anncey 22 mars 2014 14:47 djaune Bonjour,
  • 8. luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires Generated by Jive SBS on 2014-09-04-05:00 8 j'ai regardé avec attention votre post sur les fenêtres non rectangulaires, merci pour ce travail. Je voudrais bien une précision sur un point qui me surprend un peu : même sans exécuter le VI, le poisson est déjà animé... j'avoue que je ne sais pas comment on parvient à ce résultat ! car l'objet est une simple commande U16 ???? (comment associer cette commande avce un gif animé par exemple???) Merci d'avance pour une brève explication, 23 mars 2014 16:23 luc desruelle djaune en réponse à Bonjour et merci. L’objet est un pictures Ring ou menu déroulant d’images, qui représente une ou plusieurs images, et il est possible d’insérer un GIF animé. Ce type de contrôle est un entier, la valeur indiquant le numéro de l’image dans le menu déroulant. plus d'infos sur le lien Un GIF animé pour éviter de faire du code A+ 15 avr. 2014 18:26 DaHelmut Très bonnes explications Luc J'avoue que j'ai jamais fait attention au point que tu soulignes entre couleur RGB de LabVIEW et BGR de Windows ! Bon a savoir ! J'ai toujours utilisé la même couleur jusqu'à présent et ça a toujours fonctionné
  • 9. luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires Generated by Jive SBS on 2014-09-04-05:00 9 J'aime bien cette technique pour simuler des tableaux de bord dans l'automobile et l'agricole. Kudos ! ++ 16 avr. 2014 02:05 luc desruelle DaHelmut en réponse à Salut DaHelmut, Il est vrai que ton exemple était super sympa !