IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Portage d'applications CLX entre Delphi 6 et Kylix

L'auteur

Site personnel

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

I. Introduction

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ées 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 concentrerai 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.

II. Préparation

Démarrez Delphi 6, et allez dans le menu « Fichier\Nouveau\Application CLX ». Vous constaterez immédiatement un changement dans la palette, 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.

Palette VCL :

Image non disponible

Palette CLX :

Image non disponible

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.

III. 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…

Image non disponible

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

Image non disponible

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

Image non disponible

IV. Affichage du texte

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

 
Sélectionnez
const
  Hello = 'Hello World !';

ensuite, nous allons déclarer une variable « pos » qui contiendra la position du texte à afficher :

 
Sélectionnez
var
  pos: integer;

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

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

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

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

Voilà, maintenant si nous lançons l'application, 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.

Image non disponible

V. 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 voilà, le projet fonctionne sous Linux !!!

Image non disponible

Compliqué, non ?

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

Ce document est issu de http://www.developpez.com et reste la propriété exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise à l'obtention préalable de l'autorisation de l'auteur.