Bonjour,
je suis entrain de développer une application en vb.net, tout ça passe bien mais quand je met une image en arrière plan de chaque form l'application ralentie.
y a t il une solution pour résoudre ce problème?
Merci d'avance
Bonjour,
je suis entrain de développer une application en vb.net, tout ça passe bien mais quand je met une image en arrière plan de chaque form l'application ralentie.
y a t il une solution pour résoudre ce problème?
Merci d'avance
ne pas mettre d'image de fond
ne pas mettre de controls transparents, ou alors passer sur wpf
Ou remettre une barrette de RAM dans ton PC
J'ai 3GO de ram je pence que c'est suffisant
au lieu de répondre à la blague de shadam ^^, utilises tu la transparence sur les controles ?
Non j'ai pas utilisé de transparence sur les controles.
essaye de mettre une image moins grande et/ou en 96 dpi
2 Mpix suffisent pour un grand écran, donc il faut éviter les images de 20 Mpix
es-tu sur windows xp ? si oui sous vista/7 ca devrait moins ramer
et au fait, que veux tu dire exactement par "l'application ralentit" ?
les controles rames ? ton programme fait quoi ? même quand aucun code n'est exécuté ca rame ? c'est au déplacement ? au resize ?
si tu ne veux pas nous expliquer le problème, pourquoi poster ici ?? !
par exemple quand j'ouvre une fenêtre dans l'application on voit les contrôles s'ouvrir l'une après l'autre mais dans le cas normale quand on ouvre une fenêtre on voit tout les contrôles affiché rapidement et aussi quand je réduit la fenêtre aussi elle ram.
Et en mode création , le déplacement des contrôle rame aussi.
As-tu essayé de peindre ton image dynamiquement au lieu de la fixer en background ?
Voir si ça n'irait pas plus vite...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint e.Graphics.DrawImage(monbmp,0,0) end sub
pour l'ouverture des fenêtres
je crois que c'est un truc dans le genre (il fait le rendu en non visible en gros)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 dim f as new form2 f.opacity = 0 f.show f.opacity = 1
c'est ce que fait le framework ... je ne vois donc pas l'utilité ...
C'est un sujet dans lequel j'ai beaucoup travaille et ou nous avons, ici, longuement discute il y a qq annees.
Alors, a ta question, la reponse est clairement (et malheureusement) 'non'
Il faut, comme l'a signale pol, passer en wpf, ou ne pas mettre une image de fond si c'est possible.
J'ai du faire 1 million d'essais et tentatives pour essayer de contourner cette sensation de freeze/lag, mais rien n'y fait, meme avec une bete de course.
La solution que j'avais choisi (enfin oblige) à l'epoque etait d'avoir travaille la taille de l'image pour la rendre la plus petite possible (moins de 100 octets !!!) et de faire en sorte que ca passe en mosaique.
Alors le resultat etait pas top, mais mieux que sans image et que couleur uni.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager