Niouzes.org  

Précédent   Niouzes.org > Forum > Newsgroup microsoft.public.fr.* 1 Forum > Newsgroup microsoft.public.fr.fox
S'inscrire FAQ Membres Calendrier Recherche Messages du jour Marquer les forums comme lus



Réponse

 

LinkBack Outils de la discussion Modes d'affichage
  #1 (permalink)  
Vieux 25/08/2008, 14h50
Franck
 
Messages: n/a
Par défaut Editeur HTML - Shell.Explorer2

Bonjour a tous!
D'abord Merci a Frederic Steczycki pour sa contribution qui correspond
exactement a ce que je recherche
http://www.atoutfox.org/articles.asp...&ID=0000000027

Mais, le contenu de la zone d'édition disparait si cet éditeur est dans un
PageFrame,
le texte édité disparait quand on revient sur la page concernée.
et j'ai beau forcer le innerHTML de cet objet, rien n'y fait.

il manque un .Value a cet objet, car en plus je sauve le texte html dans un
mémo.

Quelqu'un s'est-il déjà battu avec ce controle?
Merci de vos réponses.


Réponse avec citation
Alt Today
Advertising
Google Adsense
 
This advertising will not be shown
in this way to registered members.
Register your free account today
and become a member on
Niouzes.org
Standard Sponsored Links

  #2 (permalink)  
Vieux 26/08/2008, 08h38
Frédéric Steczycki [AtoutFox]
 
Messages: n/a
Par défaut Re: Editeur HTML - Shell.Explorer2

Bonjour,

je n'ai pas répondu car je n'ai pas la réponse <s>
la gestion des activeX en pageframe est un problème VFP (mais pas seulement)
connu.

Fred

"nospam" <"qie(nospam)"***free.fr> a écrit dans le message de news:
eN0dydvBJHA.3200***TK2MSFTNGP03.phx.gbl...
> Bonjour,
> Comme toi, j'ai fais une remarque similaire (en 2006 !) : dans un
> "pageframe", pour ce qui me concerne en tout cas, cela ne fonctionne QUE
> sur la première page et pas sur les autres. Mais je n'ai pas eu de réponse
> de Frederic et j'ai donc réorganisé mon programme pour avoir l'éditeur
> dans la page 1.
> As tu essayé sur la page 1 du pageframe ?
> Je profite de l'occasion pour demander s'il est possible, sans utiliser
> les fonctions de "couper / coller", d'insérer directement une autre page
> HTML dedans ?
> En fait il me faudrait la syntaxe pour enregistrer la première page (qu'il
> faudra insérer automatiquement) soit sur disque, soit dans le
> presse-papier,
> puis la syntaxe pour ajouter cette page enregistrée dans le texte actuel
> de l'éditeur. Actuellement, j'enregistre correctement la page, mais au
> moment de l'insérer, il m'insère cette page avec la syntaxe HTML, ce qui
> n'est pas recherché.
> Merci d'avance.
> JPG
>
>
> Franck a écrit :
>> Bonjour a tous!
>> D'abord Merci a Frederic Steczycki pour sa contribution qui correspond
>> exactement a ce que je recherche
>> http://www.atoutfox.org/articles.asp...&ID=0000000027
>>
>> Mais, le contenu de la zone d'édition disparait si cet éditeur est dans
>> un
>> PageFrame,
>> le texte édité disparait quand on revient sur la page concernée.
>> et j'ai beau forcer le innerHTML de cet objet, rien n'y fait.
>>
>> il manque un .Value a cet objet, car en plus je sauve le texte html dans
>> un
>> mémo.
>>
>> Quelqu'un s'est-il déjà battu avec ce controle?
>> Merci de vos réponses.
>>
>>
>>



Réponse avec citation
  #3 (permalink)  
Vieux 26/08/2008, 08h44
Franck
 
Messages: n/a
Par défaut Re: Editeur HTML - Shell.Explorer2

Bonjour,
Oui, j'avait vu ta remarque de l'époque.
En fait, ce controle n'accepte pas les Refresh() : son contenu disparait !

J'ai un écran ou il est dans la 1ere page d'un pframe,
tout va bien tant qu'on ne quitte pas la page1.
J'ai sollutionné en éliminant les Refresh() touchant à la page1,
et.... ca marche!

Je planche sur un autre scx ou cet objet est sur le 2eme onglet....


Ta question
j'ajoute du texte html au texte déjà affiché par le controle (ici
This.parent.OLEHTML)

vmemo= "<b>texte a ajouter en html</b>" && texte a ajouter
vmemo=This.parent.OLEHTML.Document.Body.innerHTML ; && texte html déjà
contenu dans le controle
+"<br>"+vmemo
&& auquel j'ajoute le texte prévu
This.parent.OLEHTML.Document.Body.innerHTML=vmemo && je réaffecte le
nouveau texte dans l'objet
*This.parent.OLEHTML.Refresh() && NON!

Par contre je ne sais pas comment insèrer le texte html à la position
courrante
dans le texte, car il faut repérer ou se trouve le curseur dans le controle.
(ou alors reperer un caractère dédié à l'insertion)
Si je trouve quelque chose, je revient.

Franck




"nospam" <"qie(nospam)"***free.fr> a écrit dans le message de
news:eN0dydvBJHA.3200***TK2MSFTNGP03.phx.gbl...
> Bonjour,
> Comme toi, j'ai fais une remarque similaire (en 2006 !) : dans un
> "pageframe", pour ce qui me concerne en tout cas, cela ne fonctionne QUE
> sur la première page et pas sur les autres. Mais je n'ai pas eu de
> réponse de Frederic et j'ai donc réorganisé mon programme pour avoir
> l'éditeur dans la page 1.
> As tu essayé sur la page 1 du pageframe ?
> Je profite de l'occasion pour demander s'il est possible, sans utiliser
> les fonctions de "couper / coller", d'insérer directement une autre page
> HTML dedans ?
> En fait il me faudrait la syntaxe pour enregistrer la première page
> (qu'il faudra insérer automatiquement) soit sur disque, soit dans le
> presse-papier,
> puis la syntaxe pour ajouter cette page enregistrée dans le texte actuel
> de l'éditeur. Actuellement, j'enregistre correctement la page, mais au
> moment de l'insérer, il m'insère cette page avec la syntaxe HTML, ce qui
> n'est pas recherché.
> Merci d'avance.
> JPG
>
>
> Franck a écrit :
> > Bonjour a tous!
> > D'abord Merci a Frederic Steczycki pour sa contribution qui correspond
> > exactement a ce que je recherche
> > http://www.atoutfox.org/articles.asp...&ID=0000000027
> >
> > Mais, le contenu de la zone d'édition disparait si cet éditeur est dans

un
> > PageFrame,
> > le texte édité disparait quand on revient sur la page concernée.
> > et j'ai beau forcer le innerHTML de cet objet, rien n'y fait.
> >
> > il manque un .Value a cet objet, car en plus je sauve le texte html dans

un
> > mémo.
> >
> > Quelqu'un s'est-il déjà battu avec ce controle?
> > Merci de vos réponses.
> >
> >
> >




Réponse avec citation
  #4 (permalink)  
Vieux 27/08/2008, 09h20
Franck
 
Messages: n/a
Par défaut Re: Editeur HTML - Shell.Explorer2

Bonjour,

Page2, rien a faire.

J'ai réaffecté le inner HTML au GOTFOCUS(), ca marche quand on clique
dedans. c'est déjà ca.
En fin de Refresh() de la page, je met le setfocus() sur un bouton et {TAB}
dans le keyboard
pour que le focus passe sur l'objet HTML. (qui suit le bouton dans l'ordre
de tabulation)
Je vois le contenu flasher et disparaitre quand même. grrrr...


"nospam" <"qie(nospam)"***free.fr> a écrit dans le message de
news:uICxcS%23BJHA.3484***TK2MSFTNGP04.phx.gbl...
> Bonjour,
> Merci Franck pour ton code. Je m'étais mélangé les inner et outer ...
> Bon courage pour la page 2. J'ai abandonné et si tu trouves le problème,
> je suis preneur.
> .. et bien sur, encore merci à FRED !
> JpG
>
> Franck a écrit :
> > Bonjour,
> > Oui, j'avait vu ta remarque de l'époque.
> > En fait, ce controle n'accepte pas les Refresh() : son contenu disparait

!
> >
> > J'ai un écran ou il est dans la 1ere page d'un pframe,
> > tout va bien tant qu'on ne quitte pas la page1.
> > J'ai sollutionné en éliminant les Refresh() touchant à la page1,
> > et.... ca marche!
> >
> > Je planche sur un autre scx ou cet objet est sur le 2eme onglet....
> >
> >
> > Ta question
> > j'ajoute du texte html au texte déjà affiché par le controle (ici
> > This.parent.OLEHTML)
> >
> > vmemo= "<b>texte a ajouter en html</b>" && texte a ajouter
> > vmemo=This.parent.OLEHTML.Document.Body.innerHTML ; && texte html déjà
> > contenu dans le controle
> > +"<br>"+vmemo
> > && auquel j'ajoute le texte prévu
> > This.parent.OLEHTML.Document.Body.innerHTML=vmemo && je réaffecte le
> > nouveau texte dans l'objet
> > *This.parent.OLEHTML.Refresh() && NON!
> >
> > Par contre je ne sais pas comment insèrer le texte html à la position
> > courrante
> > dans le texte, car il faut repérer ou se trouve le curseur dans le

controle.
> > (ou alors reperer un caractère dédié à l'insertion)
> > Si je trouve quelque chose, je revient.
> >
> > Franck
> >
> >
> >
> >
> > "nospam" <"qie(nospam)"***free.fr> a écrit dans le message de
> > news:eN0dydvBJHA.3200***TK2MSFTNGP03.phx.gbl...
> >
> >> Bonjour,
> >> Comme toi, j'ai fais une remarque similaire (en 2006 !) : dans un
> >> "pageframe", pour ce qui me concerne en tout cas, cela ne fonctionne

QUE
> >> sur la première page et pas sur les autres. Mais je n'ai pas eu de
> >> réponse de Frederic et j'ai donc réorganisé mon programme pour avoir
> >> l'éditeur dans la page 1.
> >> As tu essayé sur la page 1 du pageframe ?
> >> Je profite de l'occasion pour demander s'il est possible, sans

utiliser
> >> les fonctions de "couper / coller", d'insérer directement une autre

page
> >> HTML dedans ?
> >> En fait il me faudrait la syntaxe pour enregistrer la première page
> >> (qu'il faudra insérer automatiquement) soit sur disque, soit dans le
> >> presse-papier,
> >> puis la syntaxe pour ajouter cette page enregistrée dans le texte

actuel
> >> de l'éditeur. Actuellement, j'enregistre correctement la page, mais au
> >> moment de l'insérer, il m'insère cette page avec la syntaxe HTML, ce

qui
> >> n'est pas recherché.
> >> Merci d'avance.
> >> JPG
> >>
> >>
> >> Franck a écrit :
> >>
> >>> Bonjour a tous!
> >>> D'abord Merci a Frederic Steczycki pour sa contribution qui correspond
> >>> exactement a ce que je recherche
> >>> http://www.atoutfox.org/articles.asp...&ID=0000000027
> >>>
> >>> Mais, le contenu de la zone d'édition disparait si cet éditeur est

dans
> >>>

> > un
> >
> >>> PageFrame,
> >>> le texte édité disparait quand on revient sur la page concernée.
> >>> et j'ai beau forcer le innerHTML de cet objet, rien n'y fait.
> >>>
> >>> il manque un .Value a cet objet, car en plus je sauve le texte html

dans
> >>>

> > un
> >
> >>> mémo.
> >>>
> >>> Quelqu'un s'est-il déjà battu avec ce controle?
> >>> Merci de vos réponses.
> >>>
> >>>
> >>>
> >>>

> >
> >
> >
> >



Réponse avec citation
  #5 (permalink)  
Vieux 28/08/2008, 18h01
Luc Gilot
 
Messages: n/a
Par défaut Re: Editeur HTML - Shell.Explorer2

Bonjour

Pour la Value, il faut créer ta propre classe dérivée de la classe OLE
initiale, y ajouter une propriété Value, avec Property_Access et
Property_Assign
Dans Value_Assign, tu mets This.Document.Body.innerHTML = m.vNewVal
Dans Value_Access, tu mets Return This.Document.Body.innerHTML

A +

Luc

"Franck" <fz.dutilleul***srdz.fr> a écrit dans le message de news:
uNwjbmrBJHA.5196***TK2MSFTNGP04.phx.gbl...
> Bonjour a tous!
> D'abord Merci a Frederic Steczycki pour sa contribution qui correspond
> exactement a ce que je recherche
> http://www.atoutfox.org/articles.asp...&ID=0000000027
>
> Mais, le contenu de la zone d'édition disparait si cet éditeur est dans un
> PageFrame,
> le texte édité disparait quand on revient sur la page concernée.
> et j'ai beau forcer le innerHTML de cet objet, rien n'y fait.
>
> il manque un .Value a cet objet, car en plus je sauve le texte html dans
> un
> mémo.
>
> Quelqu'un s'est-il déjà battu avec ce controle?
> Merci de vos réponses.
>
>



Réponse avec citation
  #6 (permalink)  
Vieux 29/08/2008, 16h39
Franck
 
Messages: n/a
Par défaut Re: Editeur HTML - Shell.Explorer2

Merci, je regarde ca!


"Luc Gilot" <luc.Gilot***limoog.net> a écrit dans le message de
news:uOcwH$SCJHA.1632***TK2MSFTNGP06.phx.gbl...
> Bonjour
>
> Pour la Value, il faut créer ta propre classe dérivée de la classe OLE
> initiale, y ajouter une propriété Value, avec Property_Access et
> Property_Assign
> Dans Value_Assign, tu mets This.Document.Body.innerHTML = m.vNewVal
> Dans Value_Access, tu mets Return This.Document.Body.innerHTML
>
> A +
>
> Luc



Réponse avec citation
  #7 (permalink)  
Vieux 14/10/2008, 16h32
Samos
 
Messages: n/a
Par défaut Editeur HTML - Shell.Explorer2

Bonjour Ã*** tous,

J'ai vraiment besoin d'aide : Lorsque j'ouvre le formulaire htmledit2.scx
pour la 1ère fois, aucun problème. Si je le ferme et que je l'ouvre Ã***
nouveau, j'ai l'erreur suivante : 'Le membre BODY n'a pas été évalué en tant
qu'objet.' Cette erreur intervient dans le programme
'chtmleditor1.oIE.refresh'.
Je ne peux donc pas ouvrir l'écran contenant l'éditeur plus d'une fois, ce
qui est extrêmement gênant.
Y'a-t-il un problème lors de la fermeture du form ? Je n'en sais rien et lÃ***
j'avoue que je suis perdu.
Quelqu'un a une idée ?
Réponse avec citation
  #8 (permalink)  
Vieux 21/10/2008, 08h17
Franck
 
Messages: n/a
Par défaut Re: Editeur HTML - Shell.Explorer2

Bonjour,
Dans l'init du form ou du container contenant l'objet, tu met une variable
pour détecter le 1er refresh()
..... .lFirstRefresh=.T.

Puis tu teste et modifie la variable dans le refresh() de l'objet "editeur
html" shellexplorer2

IF .... .lFirstRefresh
NODEFAULT
.... .lFirstRefresh = .F.
This.Document.Body.contentEditable = .T.
ENDIF


Sinon, et je crois que tu dois commencer par ca:

Dans l'init de l'objet shellexplorer2
* Navigatge to a blank page
This.Navigate2("about:Blank")
* Prevent an OLE error, and wait until the object
* gets the blank page open before showing or accessing
Wait "Initialisations OLE" Window TimeOut 1
vi=0
Do While Not Type("This.Document.Body") $ "O"
vi=vi+1
Wait Window Str(vi) NoWait
EndDo

*DO WHILE This.Busy
* DOEVENTS
*ENDDO


Je m'en suis sorti comme ca, mais cet objet est pas 'top' a utiliser/mettre
en oeuvre...
Franck



"Samos" <Samos***discussions.microsoft.com> a écrit dans le message de
news:99124485-7C58-4E1A-9F2A-61DE6D5613C3***microsoft.com...
> Bonjour à tous,
>
> J'ai vraiment besoin d'aide : Lorsque j'ouvre le formulaire htmledit2.scx
> pour la 1ère fois, aucun problème. Si je le ferme et que je l'ouvre à
> nouveau, j'ai l'erreur suivante : 'Le membre BODY n'a pas été évalué en

tant
> qu'objet.' Cette erreur intervient dans le programme
> 'chtmleditor1.oIE.refresh'.
> Je ne peux donc pas ouvrir l'écran contenant l'éditeur plus d'une fois, ce
> qui est extrêmement gênant.
> Y'a-t-il un problème lors de la fermeture du form ? Je n'en sais rien et


> j'avoue que je suis perdu.
> Quelqu'un a une idée ?





Réponse avec citation
 
Réponse
Tags: , ,



Outils de la discussion
Modes d'affichage

Règles de messages
Vous pouvez ouvrir de nouvelles discussions : nonoui
Vous pouvez envoyer des réponses : nonoui
Vous pouvez insérer des pièces jointes : nonoui
Vous pouvez modifier vos messages : nonoui

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui



Fuseau horaire GMT. Il est actuellement 06h10.

Italiano - German - English - Español


Édité par : vBulletin® version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0 © 2007, Crawlability, Inc. Tous droits réservés.
Version française #13 par l'association vBulletin francophone


Politique - Droit - Philosophie - Football - Medicine - Française - Bricolage - Photo - Mac Os X - Divers - Physique - Jardinage
Mecanique - Moto - Photographie - Rail - Route - Aviation - Cinema - Linux - Psychanalyse - Finance - Enigmes - Rugby
Environnement - Histoire - Programmes TV - Education - Travail - Voyages - Windows - Immobilier - Cuisine
Windows XP - Excel - Word - Outlook - Access - Internet Explorer - Office - Vista

Page generated in 0,51995 seconds with 10 queries