FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Simuler l’appui de n’importe quelle touche.
par papydall Hier à 23:54

» Le Forum est en vacances.
par JL35 Hier à 21:20

» Une autre façon de terminer une application.
par JL35 Mar 22 Aoû 2017 - 14:27

» Compilateur FBPano
par Mike Lun 21 Aoû 2017 - 23:17

» Pb 20 (en analyse): plantage à l'appel d'un SUB
par Jack Lun 21 Aoû 2017 - 21:58

» Pb 19 (en analyse): libellé d'erreur dans des IF imbriqués
par Jack Lun 21 Aoû 2017 - 21:55

» Copier / coller du texte à partir de la fenêtre de commandes
par jean_debord Lun 21 Aoû 2017 - 9:46

» COMPILATEUR V 0.9 beta 8 du 18 aout 2017
par papydall Lun 21 Aoû 2017 - 5:01

» Mettre en windows en veille
par papydall Lun 21 Aoû 2017 - 4:15

» Stretch_on ne stretch plus...
par papydall Dim 20 Aoû 2017 - 15:22

» Pb 18 (en analyse): RESTORE_LABEL avec DATA à la fin
par Jack Dim 20 Aoû 2017 - 13:21

» Problème de traitement des opérateurs avec le compilateur.
par Pedro Alvarez Sam 19 Aoû 2017 - 20:01

» Pb 17 (résolu): ITEM_SELECT ne fonctionne pas
par Jack Jeu 17 Aoû 2017 - 19:26

» un nouveau editeur panobasic
par Jean Claude Jeu 17 Aoû 2017 - 10:18

» Le compilateur.
par Pedro Alvarez Jeu 17 Aoû 2017 - 8:36

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Août 2017
LunMarMerJeuVenSamDim
 123456
78910111213
14151617181920
21222324252627
28293031   
CalendrierCalendrier

Partagez | 
 

 Objet à onglets

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Atom



Nombre de messages : 26
Date d'inscription : 11/07/2012

MessageSujet: Objet à onglets   Sam 7 Déc 2013 - 17:24

Bonjour,
Tout récemment, j'ai créé un objet à onglets. Toute la configuration de l'objet est au début du code. (couleurs, taille, position...) Par contre, l'objet ne supporte pas plus d'une rangée d'onglets. Aucun objets s'affiche sur les onglets pour l'instant, mais c'est très facile à implémenter. Wink 

Code:
' Objet à onglets - 8 décembre 2013
label draw
dim s,i,x,y,n :n=5 :' Nombre d'onglets
dim w,h,l,t,r(4),g(4),b(4),t$(n),selected

selected=1 :' Onglet sélectionné par défaut
s=0 :' Premier numéro d'objet utilisé -1

' === Définitions des couleurs
r(0)=240:g(0)=240:b(0)=240 :' Fond de la fenêtre
r(1)=255:g(1)=255:b(1)=255 : ' Contour
r(2)=130:g(2)=130:b(2)=130 : ' Ombre 1
r(3)=0:g(3)=0:b(3)=0 : ' Ombre 2
r(4)=0:g(4)=0:b(4)=0 : ' Texte

' === Texte des onglets ===
for i=1 to 5
 t$(i)="Onglet "+str$(i)
next i

' === Objet principal ===
l=50:t=30:w=400:h=250 :' Taille et position

picture s+1:2d_target_is s+1
left s+1,l:top s+1,t+20
width s+1,w:height s+1,h
color s+1,r(0),g(0),b(0)

' Dessiner le contour
2d_pen_color r(1),g(1),b(1):2d_line 0,0,0,h:2d_line 0,0,w,0
2d_pen_color r(2),g(2),b(2):2d_line 1,h-2,w-1,h-2:2d_line w-2,1,w-2,h-2
2d_pen_color r(3),g(3),b(3):2d_line 0,h-1,w,h-1:2d_line w-1,0,w-1,h-1

' ===Onglets ===
alpha 2:hide 2 :' Cible du texte

for i=s+3 to n+s+2
 y=text_width(t$(i-s-2),2)+12

 picture i
 left i,l+x+2:top i,t
 width i,y:height i,21
 on_click i,draw
 
x=x+y
next i

' Onglet caché
picture n+s+3
left n+s+3,l+x+2:top n+s+3,t
width n+s+3,2:height n+s+3,21

' === Afficher les onglets ===
x=0:gosub draw

end

draw:
' === Onglet sélectionné ===
if number_click=-1
x=selected+s+2
else
 left x,left(x)+2:width x,width(x)-2
 x=number_click
end_if

' === Afficher les onglets ===
color n+s+3,r(0),g(0),b(0) :' Effacer l'onglet caché

for i=n+s+2 to s+3 step -1
 y=text_width(t$(i-s-2),2)+12
2d_target_is i:print_target_is i

 if i<>x
 ' Onglets normaux
 color i,r(0),g(0),b(0)
 2d_pen_color r(1),g(1),b(1):2d_line 0,20,w,20:2d_line 0,4,0,21:2d_point 1,3:2d_line 2,2,y-2,2
 2d_pen_color r(2),g(2),b(2):2d_line y-2,4,y-2,21
 2d_pen_color r(3),g(3),b(3):2d_point y-2,3:2d_line y-1,4,y-1,21
 print_locate 6,5
 else
 ' Onglet sélectionné
 left i,left(i)-2:width i,y+2
 y=y+2
 
color i,r(0),g(0),b(0)
 2d_pen_color r(1),g(1),b(1):2d_line 0,2,0,21:2d_point 1,1:2d_line 2,0,y,0
 2d_target_is x+1
 2d_pen_color r(2),g(2),b(2):2d_line 0,2,0,21
 2d_pen_color r(3),g(3),b(3):2d_point 0,1:2d_line 1,2,1,21
print_locate 7,4
 end_if
 
' Imprimer le texte
 2d_target_is i
 2d_fill_color r(0),g(0),b(0):font_color i,r(4),g(4),b(4)
 print t$(i-s-2)
next i

' === Afficher/cacher les objets dans l'onglet ===
select x-s-2
 case 1:' Onglet 1
 case 2:' Onglet 2
 case 3:' Onglet 3
 case 4:' Onglet 4
 ' ...
end_select
return
Atom


Dernière édition par Atom le Dim 8 Déc 2013 - 18:30, édité 3 fois (Raison : Code)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Invité
Invité



MessageSujet: Re: Objet à onglets   Sam 7 Déc 2013 - 17:52

Voila un sujet qui me ramène bien en arrière. Les dinosaures n'étaient plus là, mais quand-même. Very Happy 
http://panoramic.free-boards.net/t357-un-module-multipage
Revenir en haut Aller en bas
 
Objet à onglets
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Passer un objet devant les autres (ou derrière)
» Disparition des onglets dans l'écran du Dispacher
» Opération sur objet EDIT
» Savoir sur quel objet un évènement a eu lieu
» Ajout d'un nouveau type d'objet dans une form Panoramic !

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC 32 bits :: Vos sources, vos utilitaires à partager-
Sauter vers: