Probleme Avec BIDIMODE? [Résolu]

cs_abdousoft 109 Messages postés mardi 3 août 2004Date d'inscription 5 novembre 2007 Dernière intervention - 21 nov. 2006 à 09:31 - Dernière réponse : MOHDATOR 8 Messages postés mercredi 22 décembre 2004Date d'inscription 30 octobre 2008 Dernière intervention
- 24 janv. 2008 à 20:41
Salut





je cherche omment modifier la position du bidimode a gacuhe pour ecrire en arabe
das plusieurs composants en delphi meme sur le caption de la fenetre?




Merci



abdelmoumene djezar
Afficher la suite 

5 réponses

Répondre au sujet
mtaallah 30 Messages postés lundi 10 décembre 2001Date d'inscription 13 décembre 2006 Dernière intervention - 23 nov. 2006 à 23:37
+3
Utile
Salut...
   J'ai oublié de vous le dire l'autre fois
   Pour le TEDIT, on peut utiliser un TMemo en utilisant une seule ligne, on aura la propriété Alignment à affecter la valeur taRightJustify et ça marche bien en arabe...
   Je vous ai dis qu'on peut toujours tricher
   Le problème qui se présente en effet c'est d'aligner un tableau (Grid ou DBGrid)...
   Voici un petit truc qui peut vous faciliter la tâche:   







             #34:How can I change alignment for TEdit







Merci
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de mtaallah
cs_Loda 900 Messages postés vendredi 3 novembre 2000Date d'inscription 30 juillet 2009 Dernière intervention - 21 nov. 2006 à 10:33
0
Utile
salut,

hummm et avec

form1.BiDiMode := bdRightToLeft;
et tes compo enfant .ParentBiDiMode = true

ça marche pas?

je comprend pas ton problème. Soit plus précis stp.
Commenter la réponse de cs_Loda
mtaallah 30 Messages postés lundi 10 décembre 2001Date d'inscription 13 décembre 2006 Dernière intervention - 21 nov. 2006 à 20:47
0
Utile
Salut,
   Je comprends bien ton problème ABDOUSOFT, car c'est le mien aussi...
   Vous cherchez à exécuter des applications compilées avec Delphi sur des windows (2000 ou XP) qui prennent en charge la langue arabe (unicode) ...
   si oui, la seule solution est le composant ORWA (ArMan, si vous ne l'avez pas trouvés, juste demande le et je peux vous l'envoyer) mais je vous ai dis dans un autre message que tous les paramètres du système vont ainsi changer à l'exécution de votre application et ne seront pas restaurés automatiquement, vous devez le faire manuellement, même les caractères des chiffres (seront comme ceux utilisés par les pays du golf)... c'est trop gênant comme solution mais c'est la seule disponible sur le marché du gratuit
   la solution BiDiMode := bdRightToLeft; permet de modifier la position du curseur qui clignote lorsqu'on écrit (je ne me souviens pas de son désignation) mais ce que'on cherche (vous n'êtes pas le seul qui cherche à programmer en arabe avec Delphi, ils sont beaucoup) c'est un composant TEdit qui supporte les caractères unicodes (comme l'arabe) et ayant la propriété Alignement (comme pour les labels) qu'on peut l'attribuer la valeur taRightJustify.
  Pour ce qui concerne le caption de la fenetre... Je ne sais pas si ça pourrait y être...
  J'espère avoir éclairé un peu  les idées...
  Si vous arrivez à quelques chose, n'hésitez pas de le poser...
 Merci
Commenter la réponse de mtaallah
cs_abdousoft 109 Messages postés mardi 3 août 2004Date d'inscription 5 novembre 2007 Dernière intervention - 24 nov. 2006 à 08:22
0
Utile
Salut


Merci bien mtaallah.

@+

abdelmoumene djezar
Commenter la réponse de cs_abdousoft
MOHDATOR 8 Messages postés mercredi 22 décembre 2004Date d'inscription 30 octobre 2008 Dernière intervention - 24 janv. 2008 à 20:41
0
Utile
const
 WS_EX_LAYOUTRTL =  $00400000;
 WS_EX_LAYOUT_RTL = WS_EX_LAYOUTRTL;

{...}

 TForm1 =  class (TForm)
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure CreateParams(var Params : TCreateParams); override;
  end;

{...}

implementation

procedure TForm1.CreateParams(var Params : TCreateParams);
begin
  inherited CreateParams(Params);
  Params.ExStyle : = WS_EX_LEFT or WS_EX_RTLREADING or WS_EX_LEFTSCROLLBAR or WS_EX_LAYOUT_RTL;
 {WS_EX_LEFT to set the text caption to the right,
  use WS_EX_RIGHT to set the caption to the left}
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 BiDiMode := bdLeftToRight; 
end;
Commenter la réponse de MOHDATOR

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.