FENÊTRE TRANSPARENTE (OPACITÉ RÉGLABLE) EN PUR VB

vlad2i Messages postés 285 Date d'inscription mercredi 20 août 2003 Statut Membre Dernière intervention 13 février 2005 - 16 janv. 2005 à 18:18
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 - 18 janv. 2005 à 20:01
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/28887-fenetre-transparente-opacite-reglable-en-pur-vb

ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 24
18 janv. 2005 à 20:01
D'accord avec toi ticomic et merci pour la note (ça fait du bien de se faire noter!!!)
ticomic Messages postés 57 Date d'inscription mercredi 22 décembre 2004 Statut Membre Dernière intervention 29 avril 2005
18 janv. 2005 à 02:46
Les sources qui ne recoivent pas de commentaires ne sont pas nécéssairement mauvais ou mal conçus, juste peut-être peu intéressantes (peut-etre je dis) du point de vue de quelqu'un qui .

Je me questionne aussi sur la touche Print Screen, et sur l'utilisation que VB en fait (oui, ca m'a fait * une fois). Quand on envoie la touche équivalente à print screen, elle est envoyée, mais ne fonctionne pas. Ca serait difficile de faire envoyer la fonction quand la touche est envoyée par Sendkey? Je ne crois pas mais bon, on ne peut pas tout avoir (surtout pas avec Microsoft).

Bravo pour ton code, bien pensé lol.
(Je suis le seul qui ose noter??) Aller, 8/10
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 24
18 janv. 2005 à 01:05
VLAD : TOUTES MES EXCUSES.
Ceci dit, tu as eu tort de ne pas critiquer mon code qui est, il est vrai à chi.. (mais fo pas le dire ;)

DARKY : Je ne renie pas les API, mais comme l'a si bien dit "MoiOlivier" :
"de faire en VB ce qu'une API peut faire aussi, et ce dans le SEUL but de comprendre comment elle marche (l'API pour ceux qui ont suivi), de voir le principe de fonctionnement.
" bien entendu, dans la limite de ce qui est faisable.

Pour l'OCX c.f. mes autres sources. merci.

Bon, on va peut-être s'arrêter là parce qu'un code aussi minable ne mérite pas autant de commentaires (surtout quand on sait que mon povre ScreenShoot et PaintedBall n'en ont pas eut :((
vlad2i Messages postés 285 Date d'inscription mercredi 20 août 2003 Statut Membre Dernière intervention 13 février 2005
17 janv. 2005 à 19:10
"les mecs comme vlad2i ne savent pas relativiser" je me demande ce que vaut cette affirmation gratuite (et fausse, me semble-t-il)...

Les API que je te proposais ne changent rien au code (et pour etre plus précis ca n'aurait fait que l'accelerer)

Quand à olivier, qui prétend "faire en VB ce qu'une API peut faire aussi" - se demande t il parfois comment fait VB ? VB utilise des API, alors tant qu'a faire autant les déclarer et les utiliser soi meme, d'autant plus que c'est parfois bien plus efficace.

Notez bien que je n'ai pas critiqué, en aucun moment, ce que ScSami a codé, je me suis contenté de proposer des améliorations possibles.

Notemment parce que ca peut vexer d'avoir un programme qui met un temps fou a dessiner des points.
Si on peut meme pas proposer des choses constructives sans avoir à se justifier... Où va-t-on hehe

Vlad
BozzoDodo Messages postés 185 Date d'inscription vendredi 20 décembre 2002 Statut Membre Dernière intervention 10 janvier 2008
17 janv. 2005 à 17:41
manque l'ocx screenshot!
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
17 janv. 2005 à 08:09
Permettez-moi d'intervenir dans ce petit débat :

ScSami : "si tu veux vraiment faire de la prog pure de dure on se demande ce que tu fous en VB" : ce n'est pas parce que tu fait du VB que tu ne programme pas : il vaut mieux faire un bon algorithme en VB qu'un algorithme minable en ASM : ca restera plus rapide en VB. De plus, après pas mal de tests, je peux dire que le VB est loin d'être aussi lent qu'on le dit si on utilise les bonnes fonctions !
L'utilisation d'API, ce n'est pas du pur VB, certes, mais ca apporte tellement à nos programme ! Pourquoi donc renier les API alors qu'il est si simple de les utiliser pour y gagner en performances ! Pourquoi vouloir se limiter à du "pur VB" ? Exemple : ma classe de gestion d'image, si j'avais voulu la coder uniquement en VB, elle serait bien moins rapide qu'elle ne l'est ! VB est lent si on ne veut pas qu'il soit rapide, c'est tout !

C'est juste dommage que ta source soit si lente, et surtout, quelle ne marche pas chez moi : j'obtiens toujours un fond de form gris plus ou moins foncé selon la position du scrollbar.

Cette source pourrait être bien pratique si elle était plus rapide, car si on peut faire de la transparence sur n'importe quelle version de Windows, je pense que ca en intéresserait plus d'un !

DarK Sidious
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 24
17 janv. 2005 à 01:21
PI LE QBASIC C'EST BIEN, na :P
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 24
17 janv. 2005 à 01:20
ToiOlivier a parfaitement raison. les mecs comme vlad2i ne savent pas relativiser. D'abord, c'est une petite source sans prétentions (vous l'aviez tous remarqué!) qui, de plus, est mal codé (désolé, je m'emerdais juste un peu alors, au lieu de mater la téloche...) et puis c'est en effet pour comprendre le fonctionnement (le mode opératoire, l'algorithme) et non pour faire un super prog. D'ailleurs, vlad, si tu veux vraiment faire de la prog pure de dure on se demande ce que tu fous en VB. Ok VB est bien rapide pour le cablage des API mais bon, t'en fera rien de bien méchant avec!!!

En fait, j'ai fait ce petit prog (tout mal foutu je dois bien le dire) parce qu'il y a une (bonne) source qui fait des fenêtres transparentes (ce qui n'a aucun intéret réel du point de vu ergonomique!) sur le site. Problème : elle n'apporte rien à personne si ce n'est l'utilisation des API. OR, ce site n'est pas destiné à l'utilisation des API mais à la prog en VB. Donc, amateurs d'API, ne passez pas votre chemin mais faites en un peu moins merci.

Cependant tu as raison, ce n'est pas tout à fait du "Pur VB", je l'admet volontier... cependant, j'ai fait l'OCX "ScreenShoot" afin d'éviter à ceux qui ne veulent pas se mettre aux API (et oui vlad, y'en a... qui n'en ont rien à foutre...) d'avoir à se prendre la tête parce que Mr Microsoft n'a pas jugé bon de nous donner l'accès à cette putain de touche "Prt Scr" (alors que dans la MSDN y'a le code de la touche!!!!!!!!!!!!! [lire la note de fin de page de la MSDN]).

Bref, j'ai fait ScreenShoot pour permetre aux débutants de faire des captures d'écrans. Pi techniquement, l'OCX étant compilé, ce prog est bien en pur VB ;-)

Mais en effet, ce code sert plus à démontrer une manière simple de mixer des couleurs pour l'émulation d'opacité.
MoiOlivier Messages postés 172 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 4 août 2005
16 janv. 2005 à 18:46
Oups !
Désolé.
Je n'avais pas vu que tu avais déposé le code source du screenshot ici il n'y a pas longtemps...
Il n'empêche : il y a des API.
Donc, tu nous montres comment mélanger des couleurs en fait (et ce, sans API)...
MoiOlivier Messages postés 172 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 4 août 2005
16 janv. 2005 à 18:34
Salut,
>vlad2i : Désolé, mais je ne suis pas d'accord avec toi, il ne s'agit pas ici de faire du "pur VB pour du pur VB", mais de faire en VB ce qu'une API peut faire aussi, et ce dans le SEUL but de comprendre comment elle marche (l'API pour ceux qui ont suivi), de voir le principe de fonctionnement.

>ScSami : Il y a quand même un petit (un gros) problème : il manque l'ocx de capture d'écran... Et là, je t'attends au tournant, parce que arriver à faire un screenshot (propre) sans API en VB6, je vois pas du tout comment...
"I'll be back" (comme dirait l'autre) quand l'ocx sera là...
@+
vlad2i Messages postés 285 Date d'inscription mercredi 20 août 2003 Statut Membre Dernière intervention 13 février 2005
16 janv. 2005 à 18:18
Point... PSET...
QBasic est mort depuis une bonne vingtaine d'années...

Trois conseils je l'espère utiles:
1. utilises l'API SetPixelV et GetPixel, jusqu'à 15 fois plus rapides pour une utilisation similaire, ou si tu t'en sens capables, SetBitmapBits pour avoir ce qui se fait de mieux en VB.

2. Change le scalemode en vbPixels et ne laisse pas en vbTwips, ca accelerera de plus de 200× la vitesse

3. enfin, faire du pur VB pour faire du pur VB n'a aucun interet, si ce n'est pour prouver que tout a des limites. En ce qui concerne la théorie, utiliser l'API ne change rien, me semble-t-il

Vlad
Rejoignez-nous