Portion de texte
servant de synopsis ou édito pour un article developpez.com. Il vous permet de faire un résumé assez bref de votre article. Ce synopsis peut contenir du texte en gras, italique ou souligné.

Penser également à y mettre un lien pointant vers la discussion du forum : Commentez

- Titre : Article DVP avec le nouveau look

- Auteur : Laurent Barbareau

- Parution : 7 janvier 2013

- Public visé :

- Licence : Copyright © 2012 djibril. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 € de dommages et intérêts. Cette page est déposée à la SACD.

Sommaire

- I. Les chapitres ou sections

- II. La notion de paragraphe

- II-A. Balises situées dans une zone <paragraph>

- II-A-1. Mise en forme

- II-A-2. Images dans le texte

- II-A-3. Liens

- II-A-4. Mettre du Latex dans le texte

- II-A-5. Note de bas de page

- II-A-6. Acronyme

- II-B. Balises situées en dehors d'une zone <paragraph>

- II-B-1. Images en dehors du texte

- II-B-2. Balise imgtext

- II-B-3. Balise rich-imgtext

- II-B-4. Les tableaux

- II-B-5. Les listes

- II-B-6. Zones de code

- II-B-7. Les animations ou vidéos

- II-B-8. Latex hors paragraphe

- III. Exemple de coloration des codes

- III-A. CSS

- III-B. Delphi et Delphi pour .NET

- III-C. JAVA

- III-D. Perl

- III-E. PHP

- III-F. XML

- III-G. HTML

- III-H. PYTHON

- III-I. DELPHI

- III-J. PASCAL

- III-K. Perl again

- III-L. SQL - code long

- V. En savoir plus

I - Les chapitres ou sections

Les chapitres ou sections permettent d'organiser votre article. Les sections sont automatiquement ajoutées à la table des matières lors de la génération de l'article. Vous pouvez très bien imbriquer les balises sections pour créer des sous-parties.

II - La notion de paragraphe

II-A - Balises situées dans une zone <paragraph>

Cette balise permet d'insérer du texte. On peut la retrouver à l'intérieur d'une section, d'un synopsis...

II-A-1 - Mise en forme

Voici un exemple de contenu avec la mise en forme du texte.

Voici un paragraphe utilisant du texte en gras, italique, souligné, avec des mots en exposant comme E=MC^2 ou en indice (texte en indice). On peut aussi avoir du texte inline.

Texte avant
Ce texte est important
Texte après !

Voici une citation récupérée sur Internet.

Décrocher un Oscar, c'est aussi difficile que d'embrasser ses propres fesses...

L'auteur de cette citation devait être inspiré ce jour là !

Il est également possible de mettre du texte en couleur : rouge, vert, bleu ...
Sans oublier la possibilité de mettre des caractères spéciaux : ÀÂÆÇÉÈÈÊËÎÏÔÔŒÛÜÙ€ àâæçéèêëîïôœûüù

II-A-2 - Images dans le texte

Voici une image dans le texte : avec la balise image : .

II-A-3 - Liens

Voici une liste de type de liens autorisés :
- Relatif : ./images/nono.jpg
- Absolu : http://nono40.developpez.com/nono.jpg
- FTP : ftp://nono40.developpez.com/nono.jpg
- News : news://borland.public.delphi
- HTTPS : https://nono40.developpez.com/nono.jpg
- MAILTO : mailto:nono40@fr.st

Nouvelle balise de lien vers un message du forum :
- Liens vers le forum avec note affichée : Commentez
- Liens vers le forum sans note affichée : Commentez
Nous pouvons mettre un lien-forum ( Commentez ) au milieu du texte

Voici une liste de type de liens avec image autorisés :

Lien avec texte : Site developpez.com
Lien utilisant l'attribut target : Site developpez.com
Lien avec l'attribut langue : Site developpez.com
Lien avec le tag faq : FAQ developpez.com
Lien avec le tag source au singulier : Site de developpez.com
Lien avec le tag sources au pluriel : Site de developpez.com
Lien avec le tag dico : Site de developpez.com
Lien avec l'image ZIP : FAQ Perl de developpez.com
Lien avec l'image PDF : FAQ Perl de developpez.com
Lien avec une mise en en forme à l'intérieur : Site de developpez.com

Renvoi : lien à l'intérieur du document : Renvoi vers la section tableaux

II-A-4 - Mettre du Latex dans le texte

Vous pouvez mettre du latex dans le texte d'un paragraphe via la balise <latex>

Vous pouvez aussi mettre du LaTeX en dehors d'un paragraphe, les formules seront alors centrées comme des images :

Voici la racine carré de 25 () égale à 5.

II-A-5 - Note de bas de page

Pour insérer une note de bas de page(1), vous devez utiliser la balise(2) <noteBasPage>. La note doit être écrite dans le paragraphe qui y fait référence.

II-A-6 - Acronyme

CPAN, A.D.S.L., A.P.I., R.A.M. .

II-B - Balises situées en dehors d'une zone <paragraph>

II-B-1 - Images en dehors du texte

Image centrée et située en dehors d'un paragraphe.

Images contenant un alignement et une légende.

Gauche

Centre

Droite

Il est possible de mettre un lien hypertexte dans une image :

Images avec affichage de miniatures :

(cliquez ici pour aggrandir l'image)

(cliquez ici pour aggrandir l'image)

(cliquez ici pour aggrandir l'image)

(cliquez ici pour aggrandir l'image)

(cliquez ici pour aggrandir l'image)

II-B-2 - Balise imgtext

La balise <imgtext>, à placer au même niveau qu'une balise <paragraph>, permet de mettre une image d'agrément sur le côté du texte. On peut mettre une image personnelle ou utiliser le code faisant référence à une idée, une attention ou une information.

La balise <imgtext>, à placer au même niveau qu'une balise <paragraph>, permet de mettre une image d'agrément sur le côté du texte.

: <imgtext type="idea"> J'ai une idée !
HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012. HTML5 spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant.

<imgtext type="info">J'ai une information !

HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012. HTML5 spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant.

<imgtext type="warning"> Attention, message important !

HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012. HTML5 spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant.

<imgtext type="error"> Attention, message important !

HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012. HTML5 spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant.

<imgtext src="image.jpg"> Image personnelle de mon profil.

HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012. HTML5 spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant. HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012. HTML5 spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant. HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012. HTML5 spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant. HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012. HTML5 spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant. HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012. HTML5 spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant.

II-B-3 - Balise rich-imgtext

La balise rich-imgtext est une variante de la balise imgtext vous permettant d'insérer autre chose que du texte : des tableaux, du code, des listes...

II-B-4 - Les tableaux

Tableau sans entête

Texte à gauche

Texte à droite

Texte centré

Texte avec une image :

Tableau avec légende et cellules groupées.

Légende du tableau.

Entête

Entête

Cellule 1

Cellules fusionnées

Cellule 2 avec couleur

Il est possible de fixer les tailles des colonnes dans un tableau à l'aide de l'attribut width.

Col1

Col2

Col3

20 %

taille libre

120 px

Tableau

Code

Liste

Nono !

AA

BB

CC

DD

<balise>data</balise>

Une liste :

- numéro 1 ;

- numéro 2.

II-B-5 - Les listes

La balise <liste> permet d'afficher une liste d'éléments.

Il est possible de modifier les puces en ajoutant un tag type à la balise liste. Vous devez utiliser dans la balise <liste> l'attribut « type ». Il peut prendre les valeurs : 1, a, A, i, I. En fonction du type choisi, vous obtiendrez, à la place des puces classiques, une numérotation avec des chiffres ou des lettres.

- Liste simple

- liste simple

Liste avec différents types :

1. chiffre

2. chiffre

1. lettre

2. lettre

1. Liste avec des lettres

2. Suite des lettre

1. Liste avec des lettres

2. Suite des lettre

1. Liste avec des lettres

2. Suite des lettre

II-B-6 - Zones de code

Code avec titre

Titre de mon code

#!/usr/bin/perl
use strict;
use warnings;

# Voici une ligne de commentaire.
print "Bonjour\n"; # Affichage du mot bonjour (autre commentaire).

Code sans titre

#!/usr/bin/perl
use strict;
use warnings;

# Voici une ligne de commentaire.
print "Bonjour\n"; # Affichage du mot bonjour (autre commentaire).

Code avec des numéros de lignes

1. #!/usr/bin/perl
2. use strict;
3. use warnings;
4.
5. # Voici une ligne de commentaire.
6. print "Bonjour\n"; # Affichage du mot bonjour (autre commentaire).

Code avec des numéros de lignes commençant à 3

3. #!/usr/bin/perl
4. use strict;
5. use warnings;
6.
7. # Voici une ligne de commentaire.
8. print "Bonjour\n"; # Affichage du mot bonjour (autre commentaire).

Code accordéon (montrer/cacher)

Code avec accordéon

1. #!/usr/bin/perl
2. use strict;
3. use warnings;
4.
5. # Voici une ligne de commentaire.
6. print "Bonjour\n"; # Affichage du mot bonjour (autre commentaire).

Code avec lien vers un fichier

code à télécharger

1. #!/usr/bin/perl
2. use strict;
3. use warnings;
4.
5. # Voici une ligne de commentaire.
6. print "Bonjour\n"; # Affichage du mot bonjour (autre commentaire).

Code Brute copié dans la page web via la balise <html-brut>

<canvas id="canvas" width="150" height="150">
<p>This example requires a browser that supports the
<a href="http://www.w3.org/html/wg/html5/">HTML5</a>
&lt;canvas&gt; feature.</p>
</canvas>
<script>
var canvas = document.getElementById("canvas");
if (canvas.getContext) {
var ctx = canvas.getContext("2d");

ctx.fillStyle = "rgb(200,0,0)";
ctx.fillRect (10, 10, 55, 50);

ctx.fillStyle = "rgba(0, 0, 200, 0.5)";
ctx.fillRect (30, 30, 55, 50);
}
</script>

II-B-7 - Les animations ou vidéos

Cette balise permet d'ajouter une vidéo de type flash swf, flv, mp4 dans votre article ou même un lien YouTube, Dailymotion ou vimeo. Vous pouvez également insérer un son mp3. Voici comment insérer les différents types de vidéos ou sons.

Lien Youtube

Animation en format "flash" non supportée.
Contenu uniquement consultable en ligne à cette adresse :
http://www.youtube.com/v/D6YYhquEVNQ

Animation en format "flash" non supportée.
Contenu uniquement consultable en ligne à cette adresse :
http://www.youtube.com/watch?v=oeghXnAGJV4

Lien Dailymotion

Animation en format "flash" non supportée.
Contenu uniquement consultable en ligne à cette adresse :
http://www.dailymotion.com/swf/4MAVXvsefFIcEboPg

Lien Vimeo

Animation en format "vimeo" non supportée.
Contenu uniquement consultable en ligne à cette adresse :
http://player.vimeo.com/video/22439234

vidéos SWF

Animation en format "flash" non supportée.
Contenu uniquement consultable en ligne à cette adresse :
http://djibril.developpez.com/videos/asa-360.swf

vidéos FLV

Animation en format "flv" non supportée.
Contenu uniquement consultable en ligne à cette adresse :
http://djibril.developpez.com/videos/asa-360.flv

vidéos MP3

Animation en format "mp3" non supportée.
Contenu uniquement consultable en ligne à cette adresse :
http://djibril.developpez.com/videos/asa-360.mp3

Lecture d'une playlist mp3

Animation en format "mp3" non supportée.
Contenu uniquement consultable en ligne à cette adresse :
http://djibril.developpez.com/temp/test/affichage-video/configuration-audio.ini

vidéos MP4

Animation en format "mp4" non supportée.
Contenu uniquement consultable en ligne à cette adresse :
http://video-js.zencoder.com/oceans-clip.mp4

vidéos M4V

Animation en format "m4v" non supportée.
Contenu uniquement consultable en ligne à cette adresse :
http://www.robwalshonline.com//demos/html5_video_demo/bubbles/bubbles.m4v

II-B-8 - Latex hors paragraphe

III - Exemple de coloration des codes

III-A - CSS

/* définition du style de la police, et largeur du select */
select {
font-family : Courier ;
font-size : 10px ;
width : 200px;
}

/* élément de couleur bleu */
option.bl_eu
{
color : #0000FF ;
background-color :#00CCFF ;

background : blue url(img.png) ;
background-color : blue ;
background-image : url(img.png) ;

}

III-B - Delphi et Delphi pour .NET

// commentaire
{
Un commentaire sur
plusieurs lignes }
{$ une directive }
Var i:Integer;
<a href="lien.html?parametre1=valeur1&amp;parametre2=valeur2">test</a>

(*
Et un autre
*)
begin
For i:=Onglet.PageCount-1 DownTo 0 Do
Begin
Onglet.ActivePageIndex:=i;
// En commentaire d ON ' euuuuuu
ShowMessage('Truc muche !'kqjhsd'jhkjh''''''hghg''''hg'); // c'est un comment !
{ et un autre }
FileName:= 'Document.doc'; // ou 'Document.rtf'
URL ='http://toto.com';
End;
end;

III-C - JAVA

// un comment en deb
public class MaClasse{
public static Map uneVariableStatique = new HashMap();
static{
/*      uneVariableStatique.put("une clef","une valeur");
uneVariableStatique.put("une autre clef","une autre http:// jshdjshd");*/
//etc un comment et import
uneVariableStatique.put("une clef","une http://valeur");
uneVariableStatique.put("une autre clef","une autr\"e valeur\\\"");
qal.declareImports("import com.unilog.data.Track");
import toto;
}

}

III-D - Perl

#!/usr/bin/perl
use strict;
use warnings;

# Voici une ligne de commentaire.
print "Bonjour\n"; # Affichage du mot bonjour (autre commentaire).

III-E - PHP

function creationPanier(){
if (!isset($_SESSION['panier'])){
$_SESSION['panier']=array();
$_SESSION['panier']['libelleProduit'] = array();
$_SESSION['panier']['qteProduit'] = array();
$_SESSION['panier']['prixProduit'] = array();
$_SESSION['panier']['verrou'] = false;
}
return true;
}

III-F - XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<document>
<xiti>
<!-- compteur Dotnet-->
<alias>Dotnet</alias>
<logg_er>logv99</logg_er>
<id>12345</id>
</xiti>
</document>

III-G - HTML

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Titre</title>
</head>
<body>
</body>
</html>

III-H - PYTHON

class Personne:
def __init__(self, nom, prenom):
self.nom = nom
self.prenom = prenom
def presenter(self) :
return self.nom + " " + self.prenom
class Etudiant(Personne):
def __init__(self, niveau, nom, prenom):
Personne.__init__(self, nom, prenom)
self.niveau = niveau
def presenter(self):
return self.niveau + " " + Personne.presenter(self)
e = Etudiant("Licence INFO", "Dupontel", "Albert")
assert e.nom == "Dupontel"

III-I - DELPHI

unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm1 = class(TForm)
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
end.

III-J - PASCAL

unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls;
type
{ TForm1 }
TForm1 = class (TForm)
Label1: TLabel; { le label "Hello world!" posé sur la fenêtre }
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
implementation
initialization
{$I unit1.lrs}
end.

III-K - Perl again

Perl/Tk

#!/usr/bin/perl
use warnings;
use strict;
use Tk;
use Tk::TableMatrix;
use utf8;
my $mw = MainWindow->new(
-title      => 'Tableau TableMatrix',
-background => 'snow',
);
$mw->Label(
-text       => "Tableau redimensionnable à l'aide de TableMatrix",
-background => 'snow',
-font       => '{arial} 12 bold'
)->pack( -pady => 5 );
my $data = {};
# Création du tableau avec une ligne et une colonne
my $table = $mw->Scrolled(
'TableMatrix',
-rows          => 1,
-cols          => 1,
-width         => 500,
-height        => 500,
-variable      => $data,
-rowtagcommand => \&type_row,
-background    => "#454545",
-titlerows     => 1,
-titlecols     => 1,
-drawmode      => 'single',
-selectmode    => 'extended',
-scrollbars    => 'osoe',
);
# Insertion de données dans le tableau
for my $row ( 0 .. 20 ) {
# Calcul du nombre de lignes dans le tableau
my $number_rows = $table->cget( -rows );
# Insertion d'une ligne si nécessaire
$table->insertRows( 'end', 1 ) if ( $number_rows < $row + 1 );
for my $col ( 0 .. 10 ) {
# Calcul du nombre de lignes dans le tableau
my $number_cols = $table->cget( -cols );
# Insertion d'une colonne si nécessaire
$table->insertCols( 'end', 1 ) if ( $number_cols < $col + 1 );
# Ligne de titre
if ( $row == 0 and $col != 0 ) {
$data->{"$row,$col"} = "Colonne $col";
}
# Colonne de titre
elsif ( $col == 0 and $row != 0 ) {
$data->{"$row,$col"} = "Ligne $row";
}
elsif ( $col == 0 and $row == 0 ) {
# rien ne se passe;
}
# Données
else {
$data->{"$row,$col"} = "($row,$col)";
}
}
}
# Configuration des lignes paires et impaires
$table->tagConfigure(
'pair_row',
-bg     => 'white',
-fg     => 'black',
-relief => 'sunken',
-state  => 'disabled'
);
$table->tagConfigure(
'impair_row',
-bg     => '#00C0E0',
-fg     => 'black',
-relief => 'sunken',
-state  => 'disabled'
);
$table->tagConfigure( 'title', -bg => '#F0E0FF', -fg => 'black', -relief => 'sunken' );
# Fusion des cellules 1,1 à 1,4
$table->spans( '1,1' => '0,3' );
$table->pack(qw/ -fill both -expand 1 -padx 10 -pady 10 /);
MainLoop;
# Permet d'assigner un tag aux lignes paires et impaires
sub type_row {
my $row = shift;
my $tag_row = ( $row > 0 && $row % 2 == 0 ) ? "pair_row" : "impair_row";
return $tag_row;

III-L - SQL - code long

Création des tables

//on supprime les tables si elles existent déjà
DROP TABLE POSITION ;
DROP TABLE FICHIER;
DROP TABLE VERSION;
//on crée les tables en ajoutant des contraintes de colonnes et de tables afin d'être sûr de garder une table valide quoi qu'il se passe.
CREATE TABLE VERSION (id MEDIUMINT PRIMARY KEY AUTO_INCREMENT, Version VARCHAR(20) NOT NULL, Active CHAR(1) NOT NULL CHECK Active IN ('O', 'N'), CHECK(Version <> '0')) ;
CREATE TABLE FICHIER (id MEDIUMINT PRIMARY KEY AUTO_INCREMENT, Version_creation MEDIUMINT NOT NULL REFERENCES VERSION.id, Version_suppression MEDIUMINT REFERENCES VERSION.id, Version_maj MEDIUMINT REFERENCES VERSION.id, Version_futur_maj MEDIUMINT REFERENCES VERSION.id, Source  VARCHAR(200), CHECK(Version_suppression IS NULL OR Version_suppression > Version_creation), CHECK((Version_suppression IS NOT NULL AND Version_maj IS NULL) OR Version_suppression IS NULL), CHECK (Version_maj IS NULL OR Version_maj > Version_creation), CHECK((Source IS NULL AND Version_maj IS NULL AND Version_futur_maj IS NULL) OR Source IS NOT NULL)) ;
CREATE TABLE POSITION (id_Fichier MEDIUMINT NOT NULL REFERENCES FICHIER.id, id_Version MEDIUMINT NOT NULL REFERENCES VERSION.id, Nom VARCHAR(100) NOT NULL, id_dossier MEDIUMINT REFERENCES FICHIER.id, Derniere_position CHAR(1) NOT NULL CHECK Derniere_position IN ('O', 'N', 'T', 'P'), PRIMARY KEY(id_Fichier, id_Version), CHECK(id_Fichier <> id_dossier));
//on crée la version 0 (version vide)
INSERT INTO VERSION VALUES('', '0', 'O');

V - En savoir plus

Pour en savoir plus, merci de lire la documentation officielle du Kit de génération.

Retour à l'article

Retour à l'article

Retour à l'article

Retour à l'article

Retour à l'article

Retour à l'article

(1)Ceci est un exemple de note de bas de page : http://www.developpez.com ou http://www.developpez.com
Retour à l'article

(2)balise, nom féminin
Sens 1 Objet, dispositif qui permet de guider, de faire suivre un tracé précis. Synonyme clignotant Anglais (aviation) light, (marine) beacon, (route) raod sign, ski (marker)
Sens 2 Marque qui permet d'identifier un élément d'un fichier, sa fonction, son emplacement [Informatique]. Anglais tag
Sens 3 Fruit du balisier [Botanique].
Retour à l'article

Article DVP avec le nouveau look

Projet d'affichage

Auteur

Laurent Barbareau