[VB] Commant centrer une boite webbrowser dans une form -> help needed

Commant centrer une boite webbrowser dans une form -> help needed [VB] - Programmation

Marsh Posté le 01-06-2002 à 14:15:28    

1) je voudrais centrer une boite webborwser dans une form automatiquement quelque soit la taille de celle-ci.
 
2) Est-ce possible de réduire la taille de la boite webbrowser proportionellement a la taille de la form. C.a.d que si je réduis ma fenetre ou se trouve la boite web, celle-ci se réduit aussi proportionellement a la réduction de la form.
En gros si je réduit ma form de 100 pixel vers la gauche, je vouadrais que automatiquement ma boite webbrowser se réduisse de 50pixels vers la gauche.
 
 
merci pour tout votre aide (Harkonnen je t'attends :)

Reply

Marsh Posté le 01-06-2002 à 14:15:28   

Reply

Marsh Posté le 01-06-2002 à 14:51:54    

Si ça continue, je vais finir par passer pour le spécialiste du VB dans ce forum, ce qui va nuire à ma réputation, surtout que ça fait 4 ans que j'ai plus fait de VB  :lol:  Mais c'est vrai qu'avant j'en faisais 8h/j, c'est comme le vélo, ça s'oublie pas  :D  
 
Pour centrer ton WebBrowser au démarrage de ton appli (ID = web dans mon exemple) :

Code :
  1. Private Sub Form_Load()
  2.     web.Top = (Me.Height - web.Height) / 2;
  3.     web.Left = (Me.Width - web.Width) / 2;
  4. End Sub


Et pour resizer automatiquement ton WebBrowser en fonction de la taille de la fenêtre, c'est exactement le même code, sauf qu'au lieu de le mettre dans le Form_Load(), tu le mets dans le Form_Resize()
Le mieux est de mettre ce code dans un module et de l'appeler dans le Form_Load() et dans le Form_Resize()
 
A+ :hello:


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 01-06-2002 à 16:22:03    

je te rappelle a l'ordre:
 
 
   web.Top = (Me.Height - web.Height) / 2;
   web.Left = (Me.Width - web.Width) / 2;
 
 
ya une érreur, c'est une erreur de compiltion causé pas le ";"
 
Normal ??
 
t'auré pas fait un mix de visual et c :) ?

 

[jfdsdjhfuetppo]--Message édité par william10 le 01-06-2002 à 16:23:55--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 01-06-2002 à 16:36:48    

oups  :ouch:  
 
euh... oui, je me suis gentiment loupé sur ce coup  :lol:  
a quand un VB avec les ";" obligatoires en fin de ligne ?  :D


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 01-06-2002 à 16:38:40    

sans les ";" ça marche :)
 
mais le problème est que en fait ceci recentre la case web quelque soit la taille de la form.
 
moi ce que je voulais c'est réduire la boite web autant que se réduit la form.
Dis moi le si je suis pas asser clair
 
si je réduis la form de 150 pixels vers la gauche j'aimerai qu'automatiquement la boite web fasse pareil, c.a.d qu'elle se réduise de 150 pixels vers la gauche aussi.
 
J'attends ta réponse ;)

Reply

Marsh Posté le 01-06-2002 à 18:02:38    

Harkonnen t pas encore arrivé sur le forum ;) ?

Reply

Marsh Posté le 01-06-2002 à 18:12:48    

Si, à l'instant  :D
 
Ceci devrait te combler de bonheur :

Code :
  1. Dim ratioForm As Single
  2. Dim WebX As Integer
  3. Dim WebY As Integer
  4. Private Sub Form_Load()
  5.     web.Top = (Me.Height - web.Height) / 2
  6.     web.Left = (Me.Width - web.Width) / 2
  7.     WebX = web.Width
  8.     WebY = web.Height
  9. End Sub
  10. Private Sub Form_Resize()
  11.     ratioForm = Me.Width / Me.Height
  12.     web.Width = WebY * ratioForm
  13.     web.Height = WebX * (1 / ratioForm)
  14.     web.Top = (Me.Height - web.Height) / 2
  15.     web.Left = (Me.Width - web.Width) / 2
  16.     WebX = web.Width
  17.     WebY = web.Height
  18. End Sub


 
Plus de ";", je pense que ça devrait passer à la compilation  :lol:  
 
A+ :hello:

 

[jfdsdjhfuetppo]--Message édité par Harkonnen le 01-06-2002 à 18:14:48--[/jfdsdjhfuetppo]


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 01-06-2002 à 18:22:09    

ya un truc que je comprends pas, je t'ai envoyé un mail sur ta boite chez free...
 
++

Reply

Marsh Posté le 02-06-2002 à 15:23:10    

Voici ce kil faut metre, ça peut servir ! et surtout un grand merci @ "harkonnen"
 
 
Dim diffWeb As Integer ' représente la différence entre la hauteur de la Form et la hauteur du WebBrowser
Dim diffText As Integer ' représente la différence entre la largeur de la Form et la largeur du TextBox
Dim diffBouton As Integer ' représente l'écart entre la zone de texte et le bouton
 
Private Sub Command5_Click()
    Dim adresse As String
    adresse = Text1.Text
    web.Navigate (adresse)
End Sub
 
Private Sub Form_Load()
    web.Navigate ("www.free.fr" )
    Command5.Default = True
    Me.ScaleMode = vbTwips
    diffWeb = Me.ScaleHeight - web.Height ' on stocke la différence de hauteur entre la Form et le WebBrowser
    diffText = Me.ScaleWidth - Text1.Width ' on stocke la différence de largeur entre la Form et le TextBox
    diffBouton = Command5.Left - Text1.Width ' on stocke l'écart entre la zone de texte et le bouton
End Sub
 
Private Sub Form_Resize()
    web.Width = Me.ScaleWidth ' la largeur du WebBrowser est toujours égale à la largeur de la Form
    web.Height = Me.ScaleHeight - diffWeb ' la hauteur du WebBrowser est égale à celle de la Form - la différence
    Text1.Width = Me.ScaleWidth - diffText ' la largeur du TextBox est égale à celle de la Form - la différence
    Command5.Left = Text1.Width + diffBouton ' on positionne le bouton après le TextBox + l'écart initial
End Sub

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed