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

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants VCL Delphi Discussion :

Gestion des TEdit


Sujet :

Composants VCL Delphi

  1. #1
    Provisoirement toléré
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 73
    Points : 32
    Points
    32
    Par défaut Gestion des TEdit
    Bonsoir comment allez vous?

    Dans mon éditeur html , je propose la sauvegarde d'un fichier en tant que modèle, j'ouvre une fenêtre avec edit pour rentrer le nom du modèle. Et je voudrais bloquer l'edit comme suivant :

    nomdufichier.extension

    je voudrais empecher l'edition de la partie extension, est ce possible ou dois je modifié le compo en profondeur?

    Bonne nuit a tous

  2. #2
    Membre émérite

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 387
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 387
    Points : 2 999
    Points
    2 999
    Par défaut
    Pas bien compris le problème ...

    Pour enregistrer un fichier en choisissant son nom, le TSaveDialog fait généralement très bien l'affaire.

    Sinon:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
    begin
      if not (Key in [' ', 'a'..'z', 'A'..'Z', '0'..'9']) then
        Key := #0;
    end;

  3. #3
    Provisoirement toléré
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 73
    Points : 32
    Points
    32
    Par défaut
    Bonsoir

    En faites j'utilise une fiche avec un edit car l'utilisateur n'a pas le choix du dossier, ni de l'extension du fichier. Mon probleme est donc le suivant :

    mon nom de fichier : sansnom1.html

    Je voudrais que l'utilisateur ne puisse pas modifié la partie qui se situe apres le . qui est dans l'exemple .html.

    Bonne soiree

  4. #4
    Membre averti Avatar de archonte
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    341
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 341
    Points : 392
    Points
    392
    Par défaut
    Pourquoi ne pas demander seulement le nom du fichier (sans l'extension) dans ton TEdit puis ajouter par programmation cette extension (MonTitreDeFichier := MonEdit.Text + '.html';) ?
    "Je n'ai jamais rencontré d'homme si ignorant qu'il n'eut quelque chose à m'apprendre."
    Galilée

  5. #5
    Provisoirement toléré
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 73
    Points : 32
    Points
    32
    Par défaut
    Bonjour

    C'est ce que j'avais fait au debut, mais si l'utilisateur rentre une extension ca fera une erreur Windows.

    Merci

  6. #6
    Provisoirement toléré
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 73
    Points : 32
    Points
    32
    Par défaut
    Je suis bête , j'ai juste a bloquer le clavier sur les ponctuations pour etre sûr de ne pas avoir de . donc pas d'extension.

    Bonne nuit

  7. #7
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 430
    Points
    28 430
    Par défaut
    Citation Envoyé par numeror Voir le message
    Bonjour

    C'est ce que j'avais fait au debut, mais si l'utilisateur rentre une extension ca fera une erreur Windows.

    Merci
    non, un fichier peut très bien s'appeler fichier.doc.xls.txt.html, ça restera un fichier HTML

    ce que tu dois interdire dans le nom du fichier c'est surtout "..", "\", "<" ">" et ":" (de tête je pense que c'est tout).

    sinon je nomme mon fichier "c:\windows\toto" et voilà que tu crées un fichier dans le répertoire Windows

    mais au lieu d'interdire la touche je trouve plus agréable d'avoir un message d'erreur lors de la validation (comme le fait Windows quand on renomme un fichier par exemple).
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  8. #8
    Membre émérite

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 387
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 387
    Points : 2 999
    Points
    2 999
    Par défaut
    La solution logique reste le TSaveDialog en renseignant la propriété DefaultExt.
    Par exemple, si cette propriété vaut html, Filename renverra la saisie utilisateur suivie de .html. De cette façon, l'extension est forcée et le contrôle de validité du nom est fait par le composant.

    Saisie utilisateur: toto.premier.second.txt
    Retour: toto.premier.second.txt.html

  9. #9
    Provisoirement toléré
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 73
    Points : 32
    Points
    32
    Par défaut
    Salut

    Oui mais avec le SaveDialog , on ne peut pas bloquer le dossier?

  10. #10
    Membre actif
    Avatar de Eric.H
    Homme Profil pro
    Inscrit en
    Décembre 2004
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 220
    Points : 286
    Points
    286
    Par défaut
    Pour info, dépend de ta version de Delphi, mais en XE3, il y a entre autres.

    System.IOUtils
    TPath.HasValidFileNameChars()
    TPath.GetInvalidFileNameChars
    IsValidFileNameChar()

    plutôt que "Key in []" ou CharInSet

  11. #11
    Provisoirement toléré
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 73
    Points : 32
    Points
    32
    Par défaut
    J'ai la version XE, mais je vais voir a quoi servent les fonctions que tu a donné.

Discussions similaires

  1. gestion des groupes
    Par muaddib dans le forum QuickReport
    Réponses: 3
    Dernier message: 31/12/2002, 11h01
  2. [reseaux] Gestion des threads en perl
    Par totox17 dans le forum Programmation et administration système
    Réponses: 2
    Dernier message: 28/11/2002, 09h40
  3. Gestion des variables - mémoire ?
    Par RIVOLLET dans le forum Langage
    Réponses: 4
    Dernier message: 26/10/2002, 12h44
  4. Réponses: 4
    Dernier message: 04/07/2002, 12h31
  5. c: gestion des exceptions
    Par vince_lille dans le forum C
    Réponses: 7
    Dernier message: 05/06/2002, 14h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo