Portage d'applications CLX entre Delphi 6 et Kylix



Avec l'apparition de Kylix, la programmation d'applications professionnelles sous Linux se trouve grandement facilitée, étant donné que Kylix reprend la même interface que Delphi et le même langage... Par conséquent, vous aurez sûrement envie de porter vos applications que vous avez programmé avec Delphi 6 sous Kylix sans avoir à tout réécrire. C'est désormais possible grâce à la CLX...

Bien que le passage de Kylix à Delphi 6 soit tout à fait possible (et identique), je me concentrerais dans cet article sur l'opération inverse, c'est à dire de Delphi 6 à Kylix, vu qu'il est facile d'accéder au disque dur Windows depuis Linux alors que l'inverse n'est pas forcément vrai...

Préparation

Démarrez Delphi 6, et allez dans le menu "Fichier\Nouveau\Application CLX". Vous constaterez immédiatement un changement dans la palette, comme par exemple les onglets "Win32", "Système", "ADO", "DataSnap", ou encore "BDE" qui disparaissent au profit d'un nouvel onglet "Contrôles Communs", et le contenu de la plupart des onglets change... En effet, tous les composants de Delphi 6 ne sont pas compatibles avec Kylix.


La palette VCL

La palette VCL



La palette CLX

La palette CLX



Pour cet exemple, nous allons réaliser une application style "Hello World", mais avec les composants CLX: nous allons afficher progressivement ce message dans une boite de texte.

Pose des composants

Placez tout d'abord un composant "TTimer" (onglet "Supplément"). Mettez sa propriété "Interval" sur "200". Il nous servira à afficher les lettres une par une...



Placez ensuite un "TStatusBar" sur votre fiche. Ce composant nous servira uniquement pour la décoration...



Enfin, placez un composant "TTextViewer" sur la fiche. C'est ce composant qui nous servira à afficher le texte.



IV Affichage du texte
Nous allons tout d'abord déclarer une constante Hello qui contient
le texte à afficher.

constante texte

const
  Hello = 'Hello World !';



Ensuite, nous allons déclarer une variable "pos" qui contiendra la position du texte à afficher:

variable position

var
  pos: integer;




Et nous initialisons cette variable à 0 dans l'événement "OnCreate" de la fiche:

Initialisation dans le OnCreate

procedure TForm1.FormCreate(Sender: TObject);
begin
  pos := 0;
end;



Et enfin nous affichons le texte en incrémentant la position en cours:

Déplacement dans le Timer

procedure TForm1.TimerTimer(Sender: TObject);
begin
  pos := (pos mod Length(Hello)) + 1;
  TextViewer1.Text := Copy(Hello, 1, pos);
end;



Voila, maintenant si nous lançons l'application maintenant, nous verrons le texte "Hello World" s'afficher progressivement, puis disparaître, et se réafficher progressivement jusqu'à la fermeture de la fiche. Notre application Hello World est terminée. Il ne nous reste plus qu'à enregistrer le projet, fermer Delphi, et démarrer Linux et Kylix.



Importation sous Kylix

Avant de fermer Windows, il faut que vous sachiez si vous pouvez accéder à votre disque dur Windows depuis Linux. Si ce n'est pas le cas, ou si vous ne le savez pas, copiez le projet sur une disquette de sorte à pouvoir l'importer.

Fermez Windows, et démarrez Linux. Copiez le répertoire de votre application (ou le contenu de la disquette si vous passez par une disquette) dans un répertoire de votre disque dur Linux.

Démarrez Kylix, et ouvrez le projet... appuyez sur F9, et voila, le projet fonctionne sous Linux !!!



Compliqué, non ?


3 requête(s) SQL executée(s) en 0.001 Secs - Temps total de génération de la page : 0.007 Secs