Page 1 sur 1

Les onglet les images ....

Publié : jeu. 20/août/2009 0:40
par lannoy
Bonsoir,

Je vient avec plein plein de question qui reste très flou chez moi .
Les voici :

Est il possible de changé la geule des onglets ?(utilisé des images a la place).
J'ai un fond, je peut le faire se répétés sur une ligne horizontal ?
Je peut éteindre mon PC avec purebasic ?

Plein d'autre viendrons ensuite merci ++

Publié : jeu. 20/août/2009 1:09
par Atomo
Pour les onglets je procèderai comme ceci :
- chaque contenu d'onglet (page) serait un containergadget() différent
- chaque onglet serait un bouton ou un bouton image
- quand tu cliques sur ton bouton, tu affiches le container, les autres seront cachés avec hidegadget()

Je sais pas si tu as compris mais je pense que ça devrait fonctionner.

Publié : jeu. 20/août/2009 1:20
par lannoy
Le truc est que c'est pour faire un navigateur donc le panel d'onglet m'aurais beaucoup aidé

Publié : jeu. 20/août/2009 6:56
par Ar-S
Slinner un panel gadget me semble chaud, mais les buttonimage pas de problème, en les disposant comme il faut, ils peuvent très bien faire office d'onglets, même pour un navigateur.

Publié : jeu. 20/août/2009 13:49
par lepiaf31
Bon j'ai fait un ptit code pour exemple. Le probleme c'est qu'un buttonimage c'est pas très jolie. J'ai donc utilisé un ImageGadet classique avec une icone (pour la transparence). Je suis obligé de dessiner sur la fenetre car on ne peut dessiner sur une icone. Voilà ce que ca donne:

Code : Tout sélectionner

;Test sur les onglets-images
;Par lepiaf31

Procedure DrawTextOnTab(Window) ;dessine le titre sur le gadget
  StartDrawing(WindowOutput(Window))
  DrawingMode(#PB_2DDrawing_Transparent)
  DrawText(40, 55, "Onglet 1")
  DrawText(168, 55, "Onglet 2")
  StopDrawing()
EndProcedure

#Image_Onglet = 0
LoadImage(#Image_Onglet, "onglet.ico")

OpenWindow(0, 0, 0, 500, 500, "test", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
Onglet1 = ImageGadget(#PB_Any, 10, 10, 128, 60, ImageID(#Image_Onglet))
Onglet2 = ImageGadget(#PB_Any, 133, 10, 128, 60, ImageID(#Image_Onglet))

Container1 = ContainerGadget(#PB_Any, 10, 90, 480, 300)
  ButtonGadget(#PB_Any, 0, 0, 120, 30, "Button de l'onglet 1")
CloseGadgetList()
Container2 = ContainerGadget(#PB_Any, 10, 90, 480, 300)
  ButtonGadget(#PB_Any, 0, 0, 120, 30, "Button de l'onglet 2")
CloseGadgetList()
HideGadget(Container2, 1)


Repeat
  Select WaitWindowEvent()
    Case #PB_Event_CloseWindow
      Break
    
    Case #PB_Event_Gadget
      Select EventGadget()
        Case Onglet1
          HideGadget(Container2, 1)
          HideGadget(Container1, 0)
        Case Onglet2
          HideGadget(Container1, 1)
          HideGadget(Container2, 0)
      EndSelect
      
    Case #PB_Event_Repaint
      DrawTextOnTab(0)
  EndSelect
ForEver
Image à utiliser:
onglet.ico

Publié : jeu. 20/août/2009 14:36
par Atomo
Tu peux tester la version 4.40 de PureBasic qui est en beta, elle supporte la transparence sur les images png par exemple.