Generated by Jive SBS on 2014-09-04-05:00 
1 
luc desruelle's Blogue: Les fenêtres LabVIEW 
ne sont pas toutes rectangulai...
luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires 
Generated by Jive SBS on 2014-09-04-05:00 ...
luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires 
Generated by Jive SBS on 2014-09-04-05:00 ...
luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires 
Generated by Jive SBS on 2014-09-04-05:00 ...
luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires 
Generated by Jive SBS on 2014-09-04-05:00 ...
luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires 
Generated by Jive SBS on 2014-09-04-05:00 ...
luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires 
Generated by Jive SBS on 2014-09-04-05:00 ...
luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires 
Generated by Jive SBS on 2014-09-04-05:00 ...
luc desruelle's Blogue: Les fenêtres LabVIEW ne sont pas toutes rectangulaires 
Generated by Jive SBS on 2014-09-04-05:00 ...
Prochain SlideShare
Chargement dans…5
×

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

265 vues

Publié le

0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
265
Sur SlideShare
0
Issues des intégrations
0
Intégrations
7
Actions
Partages
0
Téléchargements
3
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

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

  1. 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. 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. 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. 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. 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. 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. 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. 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. 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 !

×