begin process at 2012 02 16 10:21:24
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Divers

 > 

General

 > 

VB 2005, dessiner sur le bureau


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

VB 2005, dessiner sur le bureau

mardi 16 décembre 2008 à 14:47:14 | VB 2005, dessiner sur le bureau

tefa24600

Bonjour à tous, je travaille actuellement sur un petit logiciel capable de dessiner sur le bureau à l'instar de gribouille.

Je suis tombé sur beaucoup de codes permettant ceci mais ils étaient soient en C (et donc incompréhensible pour moi), soit en VB6 (et certaines fonctions n'existent plus sous VB 2005)

Mon application consistait à afficher une picturebox dans une form transparente (grâce à la propriété opacity) à 80%, qui prenait tout le bureau, et qui me permettait de "dessiner sur le bureau", mais en réalité on dessinait sur la picturebox quasi transparente... Et cette option représente plusieurs limites :
  • Les tracés sont eux aussi transparents à 80%
  • Lorsqu'on met la form transparente à 100%, c'est comme si elle n'existait plus
J'ai donc laissé ma form bien apparente, mais mis ma picturebox en transparent, et rebelotte, c'est comme si on avait un "trou" dans la form, on ne peut plus dessiner dessus... Ma question est claire :
  • Est-ce que le procédé que j'applique est bien adéquat ?
  • Est-ce qu'il existe d'autres solutions ?
mardi 16 décembre 2008 à 15:04:29 | Re : VB 2005, dessiner sur le bureau

nhervagault

Administrateur CodeS-SourceS
Salut,

Voici une source en c#
http://www.codeproject.com/KB/cs/DrawWithMouse.aspx#DrawingontheScreen10

Le code vb2005 ent decoulera sans trop de probleme.
(c'est pas complexe si tu as des pbs utilisent reflector pour finir la traduction)

Apres a toi de gerer pour dessiner directement sur le bureau et non dans un second temps comme dans l'applicaiton.

Bon coding
mardi 16 décembre 2008 à 15:33:35 | Re : VB 2005, dessiner sur le bureau

lesdis

Réponse acceptée !
Bonjour,

Juste un petit exemple, je te laisse le soin de dessiner ce que tu veux :

  Private Declare Auto Function GetDesktopWindow Lib "user32.dll" () As IntPtr

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim graph As Graphics = Graphics.FromHwnd(GetDesktopWindow)
        graph.FillRectangle(Brushes.Aqua, 0, 0, 100, 200)

    End Sub


Bonne Prog
jeudi 18 décembre 2008 à 16:36:22 | Re : VB 2005, dessiner sur le bureau

tefa24600

Merci pour vos réponses :

nhervagault, je suis dejà arrivé à ce résultat ^^ le problème serait de le faire sur le bureau (et donc hors de la form)

lesdis, celà m'a l'air d'être un début de réponse mais seulement je ne vois pas comment je peux dessiner quelque chose...

Désolé, je suis en première année de BTS et je ne vois pas comment exploiter ce code... Honte à moi !

Néanmoins j'accèpte cette réponse qui me rapproche d'un résultat ;)

jeudi 18 décembre 2008 à 18:19:17 | Re : VB 2005, dessiner sur le bureau

lesdis

Réponse acceptée !
Yop,

Je t'explique un petit peu :
Pour dessiner en vb2005, il te faut récupérer une "surface" à dessiner.

Dim graph As Graphics = Graphics.FromHwnd(GetDesktopWindow)

GetDesktopWindow te permet de récupérer l'handle du bureau et
Graphics.FromHwnd te permet de récupérer la "surface" associé au handle fourni (donc dans notre exemple la surface du bureau)

Ensuite, il existe plusieurs méthodes dans la classe Graphics qui te permettront de dessiner des rectangle, lignes, courbes etc.
Je te laisse te renseigner sur cette classe et parcourir les multiples sources présentes sur ce site.

Petit précision : Ce que tu souhaiterais c'est pouvoir dessiner avec ta souris sur le bureau? Je ne connais pas gribouille et tu n'as pas donner beaucoup de renseignement sur ton projet.

Je reste à disposition si tu as besoin d'aide.
Bonne Prog

samedi 20 décembre 2008 à 14:54:27 | Re : VB 2005, dessiner sur le bureau

tefa24600

Merci encore pour ton aide et oui en effet, ce que je souhaiterai c'est dessiner sur mon bureau...

Gribouille est donc un logiciel gratuit telechargeable sur le net, qui m'en a donné l'idée mais qui est tres limité...

Je vais travailler desssus, joyeuses fêtes !
mardi 6 janvier 2009 à 15:39:28 | Re : VB 2005, dessiner sur le bureau

tefa24600

Bonne année et re-bonjour dans le casse tête de la semaine...

J'ai bien compris ce que tu m'as gracieusement offert, mais pour ce qui est de l'exploiter...

En clair, je récupère l'accès (le handle) sur le bureau mais... comment dessiner dessus ?
mardi 6 janvier 2009 à 15:47:34 | Re : VB 2005, dessiner sur le bureau

nhervagault

Administrateur CodeS-SourceS
Tu mets graph en variable privée de ta classe et tu dessines dessus apres

graph.DrawRectangle(....)
mercredi 7 janvier 2009 à 15:49:48 | Re : VB 2005, dessiner sur le bureau

tefa24600

Ben oui, mais je n'arrive pas à dessiner dessus... Je ne sais pas ce que j'ai loupé dans l'histoire... Je peux te passer mon prog si tu veux voir ce que j'ai oublié de faire non ?
mercredi 7 janvier 2009 à 16:30:40 | Re : VB 2005, dessiner sur le bureau

lesdis

Bonjour et bonne année !

Tu peux toujours nous fournir ton code pour voir ce que tu as fais et te donner des pistes.

Sinon je te conseille en premier d'apprendre a dessiner sur une form ou picturebox. Il y a pleins de sources sur ce sites qui te permettront de te familiariser avec les outils de dessin de VB

Bonne Prog

1 2

Cette discussion est classée dans : form, vb, bureau, picturebox, dessiner


Répondre à ce message

Sujets en rapport avec ce message

Form Dessiner [ par pomflotte ] Bonjour à tous ! ! !Je voudrai créer une form personnalsé, c'est-à-dire qui n'a pas une forme rectangulaire (ou autres formes géométriques) mais une f Dessiner dans une form VB.NET [ par tibo76 ] Bonjour, je cherche à dessiner dans une forme avec les outils... mais la barre d'outil image reste grisée.Comment faire?MerciTibo [VB.Net] Comment dessiner un point sur une Picturebox [ par neoleo ] Salut à tousje voudrais savoir comment faire pour dessiner un point sur une pictureboxsur VB6 c'étais facile avec la fonction SetPixel, mais cette fon VB.Net Picturebox dessiner plus d'une ligne [ par JeffC1977 ] Salut...Je fais dessiner des croix dans un picturebox. Je veux dessiner quelques lignes qui utilise les coordonnées des croix.J'ai fini par réussir à URGENT - Dessiner des motifs sur une PictureBox sans modifier son contenu? [ par hectorticoli ] Bonjour, Je voudrais savoir si il existe un moyen de dessiner des motifs (une croix, ou une ellipse -> le code est déjà prêt)  sur une picturebox, ma [vb.net]Appli sans form : comment faire ? [ par zaxoum ] Salut a tous !Je suis à la recherche d'un moyen simple et efficace de réaliser ceci :Une application sans form qui quand elle démarre n'affiche qu'un VB Excel - Form [ par morickno ] j'ai inséré un TreeView sur une feuille et j'aimerai savoir comment charger mon arbrej'ai essayé avec UserForm1.TreeView1.Nodes.Add mais ça plantecomm mettre une form dans une form en vb.net [ par xps ] BonjourJe voudrais mettre une form dans une form. On m'a dit qu'il fallait le faire avec mdi mais je ne sais pas ce que c'est.Pouvez vous me dire comm VB.NET_initié [ par ZOBYMASTER ] Bonjour, je suis à la recherche de méthodes VB.NET pour manipuler des bitmaps.Je m'explique: j'ai un PictureBox: "Plan" où je charge des bmp(de petite Alimentation de label d'une form différentes [ par lucio57 ] Bonjour,Je suis en train de developpé un programme VB.NetDans ce prg ma form1 appelle une seconde form par un menumethodesForm2.showou form2.showdialo


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,655 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales