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 :

Afficher une page html construite dans le logiciel [TSrings]


Sujet :

Composants VCL Delphi

  1. #1
    Membre habitué
    Avatar de xenos
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    400
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 400
    Points : 197
    Points
    197
    Par défaut Afficher une page html construite dans le logiciel [TSrings]
    Salut,

    Je développe un logiciel avec Delphi 2006 sous WinXP.

    L'utilisateur écrit du code html dans un Mémo. Je voudrais visionner directement le travail effectué.

    Malheureusement, il y a un problème entre le TStrings du Mémo et le String du WebBrowser.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    procedure TForm1.Button1Click(Sender: TObject);
    var
      Flags, TargetFrameName, PostData, Headers: OleVariant;
      sHTML: TStrings;
     
    begin
      sHTML := Memo1.Lines;
      WebBrowser1.Navigate('about:' + sHTML, Flags, TargetFrameName, PostData, Headers);  
    end;
    J'ai cherché dans la FAQ http://delphi.developpez.com/faq/?pa...wser#buildpage, mais toutes les solutions proposées ne fonctionnent qu'avec du String.

    Je n'arrive pas à trouver un terrain d'entente pour les deux composants ...

    D'avance merci pour vos réponses.

  2. #2
    Membre éclairé
    Avatar de MD Software
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    613
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 613
    Points : 680
    Points
    680
    Par défaut
    Eh bien constitue un String à partir du TStrings
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    procedure TForm1.Button1Click(Sender: TObject);
    var
      Flags, TargetFrameName, PostData, Headers: OleVariant;
      sHTML: String;
      i : integer; 
    begin
      sHTML := '';
     
      for i:=0 to Memo1.Lines.count-1 do 
        sHTML := sHTML + Memo1.Lines[i];
     
      WebBrowser1.Navigate('about:' + sHTML, Flags, TargetFrameName, PostData, Headers); 
    end;
    Tu peux éventuellement ajouter des caractères entre chaque ligne (retour chariot, espace ....)
    MD Software
    ---------------------------
    F.A.Q. Delphi - Cours Delphi - Composants Delphi - Sources Delphi

  3. #3
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Pas besoin d'une boucle pour mettre un memo en string

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    procedure TForm1.Button1Click(Sender: TObject);
    var
      Flags, TargetFrameName, PostData, Headers: OleVariant;
        i : integer; 
    begin
     
      WebBrowser1.Navigate('about:' + Memo1.Text, Flags, TargetFrameName, PostData, Headers); 
    end;
    Modérateur Delphi

    Le guide du bon forumeur :
    __________
    Rayek World : Youtube Facebook

  4. #4
    Membre éclairé
    Avatar de MD Software
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    613
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 613
    Points : 680
    Points
    680
    Par défaut
    Citation Envoyé par Malatar
    Pas besoin d'une boucle pour mettre un memo en string

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    procedure TForm1.Button1Click(Sender: TObject);
    var
      Flags, TargetFrameName, PostData, Headers: OleVariant;
        i : integer; 
    begin
     
      WebBrowser1.Navigate('about:' + Memo1.Text, Flags, TargetFrameName, PostData, Headers); 
    end;
    C'est tout à fait vrai. Cependant, il peut vouloir remplacer les sauts de lignes par autre chose de plus HTML
    MD Software
    ---------------------------
    F.A.Q. Delphi - Cours Delphi - Composants Delphi - Sources Delphi

  5. #5
    Membre habitué
    Avatar de xenos
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    400
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 400
    Points : 197
    Points
    197
    Par défaut
    Merci pour vos réponses MDSoftware et Malatar.

    Vos codes fonctionnent très bien.

    bonne fin d'soirée.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Afficher une page html dans un WebBrowser
    Par Yepes dans le forum VB.NET
    Réponses: 10
    Dernier message: 26/03/2008, 14h49
  2. comment afficher une page html dans jsf ?
    Par Philcmoi dans le forum JSF
    Réponses: 1
    Dernier message: 01/10/2007, 11h47
  3. comment afficher une page html dans internet
    Par Philcmoi dans le forum Intégration
    Réponses: 1
    Dernier message: 28/09/2007, 07h25
  4. afficher une page html dans un jtextpane
    Par fievel dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 15/03/2006, 17h36
  5. [vb.net][html] afficher une page html dans une interface vb?
    Par graphicsxp dans le forum Windows Forms
    Réponses: 1
    Dernier message: 29/09/2005, 17h31

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