Zoom

Résolu
maleux Messages postés 12 Date d'inscription mardi 2 mai 2006 Statut Membre Dernière intervention 7 avril 2009 - 23 janv. 2007 à 15:34
maleux Messages postés 12 Date d'inscription mardi 2 mai 2006 Statut Membre Dernière intervention 7 avril 2009 - 26 janv. 2007 à 09:08
bonjour,je fais le zoom mais quand je veux redessiner dessus la fenêtre redevient à la taille d'origine sauf si je peints l'intérieur du dessin zoomé.
si quelqu'un a une idée ça m'arrangerais beaucoup dans mon programme Paint
merci d'avance et bonne journée.
mon Email:alain.maleux@aliceadsl.fr.
salutations

@l@in

9 réponses

jmfmarques Messages postés 7668 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
23 janv. 2007 à 15:55
Pas clair !

1) tu "fais le zoom" : de quoi et comment (code) ?
2) sauf si tu "peints l'intérieur du dessin zoomé." ! Explique donc : cela ne veut rien dire en VB
3) "dans mon programme Paint" ! Paint est une application Windows

Recommence, soit très précis, y compris dans le vocabulaire utilisé et, si possible, avec un peu de code ...

profites-en pour confirmer que tu développe bien en VB6
3
jmfmarques Messages postés 7668 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
23 janv. 2007 à 16:38
1) je ne comprends pas ce que vient faire un zoom dans l'événement timer d'un contrôle timer (très bizarre)!... tu le mets en route et l'arrêtes ? Une routine aurais fait l'affaire, non ?
2) tu aurais pu nettoyer ce code de ce dont tu ne te sers pas ! (P(2) , ton GetDC
3) pas plutôt "zoomé" tu sauvegardes, mais avec la propriété autoredraw à false, ma foi, je vois mal la chose ! 

Bref ! rien de celà ne me semble très sérieux...

J'abdique .... sans aller plus loin ! celà me donne l'impression de petits bouts ramassés ici ou là ...
3
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
26 janv. 2007 à 07:29
Salut,

sans garanti (pas testé avec mdi), essaie peut-être ma classe Zoom, exemple pour toi :

Option Explicit

Private Sub Form_Load()
    sbMain.MyControls.Add("Picture1")

    Call PropertyZoom.Ini_Classe(Me)
    Call PropertyZoom.Zoomed(Me, 200)
'   200 coresspond à un zoom de
200%, tu peux mettre la valeur que tu veux
End Sub

~ <small>[code.aspx?ID=39466 Mortalino] ~
Colorisation automatique</small>

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
3
maleux Messages postés 12 Date d'inscription mardi 2 mai 2006 Statut Membre Dernière intervention 7 avril 2009
23 janv. 2007 à 16:12
oui je programme en VB6 j'ai reproduit Paint avec une feuille Mdi pour les accessoires et une Form pour dessiner jusque la tout va bien
mais quand je fais le zoom de mon dessin ça fonctionne.le problême
c'est que ne peux redessiner dessus en taille zoom;j'envoye le zoom
car tout le programme est tres volumineux
Private Sub Timer3_Timer()    Zoom 1 / 3: z 3
            frmDess.picture1.AutoRedraw = False
            frmDess.Width = (Width * z)
            frmDess.Height = (Height * z)
            picture1.Width = frmDess.Width
            picture1.Height = frmDess.Height
            'picture1.Cls
            P(2) = GetDC(0)
            'GetCursorPos P(0)
            frmDess.PaintPicture frmDess.Picture, 0, 0, ScaleX((frmDess.Width) * z), frmDess.ScaleY((frmDess.Height) * z)
            'frmDess.PaintPicture picture1.Picture, 0, 0, ScaleX((frmDess.picture1.Picture.Width) * z), frmDess.ScaleY((frmDess.picture1.Picture.Height) * z)
            'StretchBlt picture1.hDC, 0, 0, frmDess.ScaleWidth, frmDess.ScaleHeight, P(2), P(0) - (frmDess.ScaleWidth * Zoom) \ 2, P(1) - (frmDess.ScaleHeight * Zoom) \ 2, frmDess.ScaleWidth * Zoom, frmDess.ScaleHeight * Zoom, vbSrcCopy
            'ReleaseDC 0, P(2)
    SavePicture Image, Filename
    Timer3.Enabled = False
    frmDess.DrawWidth = DrawWidth + 1.3    Xm X: Ym Y
    frmZoom.OptZoom(2).value = True
    MDIForm1.Label8.Caption = frmDess.Height
    MDIForm1.Label9.Caption = frmDess.Width
End Sub
merci d'avoir répondu quand meme
@l@in
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
maleux Messages postés 12 Date d'inscription mardi 2 mai 2006 Statut Membre Dernière intervention 7 avril 2009
23 janv. 2007 à 16:52
exact j'essai de comprendre j'ai le temps je suis a la retraite,tu verras un jour peut être ce que j'ai fait est la reproduction axact de paint.
merci beaucoup

@l@in
0
jmfmarques Messages postés 7668 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
23 janv. 2007 à 17:04
Ah !

Voilà que selon toi Paint utiliserait un Timer comme sous-routine !


Un conseil : commence par analyser le travail fait dans ce domaine par DARKSIDIOUS...


Une information, maintenant : j'ai depuis très longtemps fait un outil de dessin bien plus complet que celui de PAINT ... et je suis loin d'être le seul .....


Travailles bien....
0
jmfmarques Messages postés 7668 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
23 janv. 2007 à 17:08
Plus simple : tu trouveras dans mes sources des sujets de traitement d'image !
Tous commencent par un zoom (d'entrée de jeu, pour que celà tienne sur la form). Il y a ensuite des transformations qui sont faites. Et elles sont bien faites sur une image "zoomée" (comme tu dis), non ?
0
maleux Messages postés 12 Date d'inscription mardi 2 mai 2006 Statut Membre Dernière intervention 7 avril 2009
23 janv. 2007 à 17:35
je te remercie beaucoup ce timerZoom c'est le seul que j'ai trouvé
sur codeScourceS j'ai essayé.chao.
au faite je ne sais pas ou aller pour voir tes codes.

@l@in
0
maleux Messages postés 12 Date d'inscription mardi 2 mai 2006 Statut Membre Dernière intervention 7 avril 2009
26 janv. 2007 à 09:08
Bonjour
je te remercie d'avoir pensé à mon problême,je vais essayer ça.
je te souhaite une bonne journée.

@l@in
0
Rejoignez-nous