begin process at 2008 07 25 04:00:39
1 216 054 membres
37 nouveaux aujourd'hui
14 180 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : extractfilepath et curseur sur un edit!!! [ Divers / Débutant(e) ] (othland)

extractfilepath et curseur sur un edit!!! le 27/12/2006 16:19:56

othland
slt tlm;
j'ai deux petites questions:

1) j'ai un nom de fichier executable sans le '.exe' à la fin, et je veux avoir son chemin dans le disque dur, j'ai éssayer avec la fonction : ExtractFilePath(Edit1.Text); mais ça n'a pas marché!!!
avez vous une autre idée???

2) j'ai une chaine de caractère écrite dans un TEdit, je veux placer le curseur clignotant (|) dans un emplacement bien défini au milieu de la chaine!!
connaissez vous une fonction qui fais ce truc???
merci infiniment!
ciao

Re : extractfilepath et curseur sur un edit!!! le 27/12/2006 16:26:36

CptPingu
1) La fonction ExtractFilePath traite une chaine de caractere, elle va pas trouver un fichier sur le disque dur pour toi. Il faut que tu utilise des fonctions du genre "findnext" et autre en partant recursivement de la racine.

2) SetCursosPos ?

Re : extractfilepath et curseur sur un edit!!! le 27/12/2006 17:16:20

cirec
Membre Club
(Admin CS)
Salut,


Voici un petit exemple qui permet de définir et/ou récuperer la position du curseur dans un TEdit, TMemo ... etc

{Function qui récupère la position du Curseur}
Function GetCaretPos(aHandle : THandle): TPoint;
Begin
  Result.X := LongRec(SendMessage(aHandle, EM_GETSEL, 0, 0)).Hi;
  Result.Y := SendMessage(aHandle, EM_LINEFROMCHAR, Result.X, 0);
  Result.X := Result.X - SendMessage(aHandle, EM_LINEINDEX, -1, 0);
End;

{Procedure qui définit la position du Curseur}
Procedure SetCaretPos(aHandle : THandle; Value: TPoint);
var
  CharIdx: Integer;
begin
  SetFocus(aHandle);
  CharIdx := SendMessage(aHandle, EM_LINEINDEX, Value.y, 0) + Value.x;
  SendMessage(aHandle, EM_SETSEL, CharIdx, CharIdx);
end;

{ Utilisation }
procedure TForm1.btn_GetCaretPosClick(Sender: TObject);
Var Point : TPoint;
begin
  Point := GetCaretPos(Edit1.Handle);
  Label1.Caption := Format('X : %d, Y : %d', [Point.X, Point.Y]);
end;

procedure TForm1.btn_SetCaretPosClick(Sender: TObject);
var
  Value : TPoint;
begin
  Value.x := 2;
  Value.y := 0; // dans un Edit il n'y a qu'une ligne ... donc Y = 0
  SetCaretPos(Edit1.Handle, Value);
end;


 
@+
Cirec


Re : extractfilepath et curseur sur un edit!!! le 02/01/2007 14:49:38

othland

slt tlm;

pour la position du curseur dans le TEdit, je viens de trouver ça :
///////////////////////////

Edit1.SetFocus;

Edit1.SelStart := 2; //le curseur se positionne aprés la deuxièmme letre de ce qui est 
                               //écrit dans le champ edit!!
///////////////////////
ciao



Classé sous : fonction, chaine, edit, curseur, extractfilepath

Participer à cet échange

Pub



Appels d'offres

Creation portail video
Budget : 3 000€
Site de e-commerce
Budget : 5 000€
Demande de devis pour ...
Budget : 7 000€

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS