Soyez le premier à donner votre avis sur cette source.
Vue 7 467 fois - Téléchargée 4 716 fois
'Je laisse ce qu'il y avait: ' ************************************************************************* ' * Saisie de mots ou expressions (avec leur emplacement)sur doc.rtf * ' ************************************************************************* 'DEBUT:On ouvre à côté un fichier.txt et on lance le programme de saisie; ' on choisit le doc.rtf à traiter (après relecture: pas de modif possible ensuite) ' 1-Sélectionner l'élément voulu sur la richtextbox (faire glisser la souris, bouton gauche appuyé) ' *** Si on commet une erreur, il suffit de sélectionner autre chose ' ==>(la plage sélectionnée , sa position,son nb de caractères sont automatiquement placée sur le presse-papiers) '*On passe directement sur le fichier.txt (surtout pas de [ctrl-C]! ' 2-cliquer à l'endroit désiré sur le fichier-txt (un saut de ligne est intégré à l'info mémorisée dans le presse-papiers) ' 3-faire [ctrl-V] pour placer le contenu du presse-papiers sur le fichier-txt 'FIN:on ferme le programme de saisie [croix rouge haut droit]; 'On sauvegarde le fichier.txt dans le même dossier avec le même radical que le doc.rtf ' ... et on fait les aménagements nécessaires pour que le fichier-txt serve de fichier de données, ' selon le logiciel d'utilisation créé. ' contrôles:1 bouton commande ("Cmdchargrtf") ' 1 richtextbox 'richtx32.ocx et autres .dll nécessaires dans system32 (et syswow64 pour W7) ' 1 common control dialog pour choisir doc.rtf et charger ' 1 label pour voir ce qu'on fait ' ================== C'est avec cela que j'ai pointé toutes les données des exos de lecture ================================= '-------------------------------------------------------------------------------------------------------------------------------------- '[J'ai joint l'exe à tout hasard, mais avec le code on bidouille selon les besoins ("saisiaoidrtf.exo" à modifier en "saisiaoidrtf.exe")] ' J'avais essayé avec "shell" et "sendkeys" , mais il ne fait pas toujours le facteur et j'ai eu les gros yeux de Ucfoutu (que je remercie pour sa rapidité à me répondre), 'alors je fais le facteur à la main par un clic et [ctrl-V], ce qui permet d'ailleurs de gérer avec souplesse la situation. 'J'ai aussi laissé ce que je faisais avant (une richtextbox avec le doc.rtf, et , à côté une textbox où les données s'affichent et où je peux les bidouiller avant de faire "open... for output...") ' "saisinfortf.exo" à changer en "saisinfortf.exe" 'en n'écrasant pas cette fois un fichier.txt antérieur ou en cours qui aurait le même nom, mais en additionnant leurs données. '-------------------------------------------------------------------------------------------------------------------------------------- '*** ces variables sont locales:on peut faire l'économie de les déclarer: Dim tpl As String 'tpl=mémorise le richtxt.rtf Dim pl0, pl1 'pl0 =position de départ du txt sélectionné ds le richtext (ou tpl) [RichTextBox1.SelStart] 'pl1=longueur du txt sélectionné ds le richtext (ou tpl) [RichTextBox1.SelLength] Dim repe As String 'repe= mot ou expression sélectionné Dim recran 'pour 2 types d'écrans (modifier taille RichTextBox1) (décimal) Private Sub Cmdchargrtf_Click() ' ######### Choix du .rtf à traiter (CHARGER RTF) ######### Cmdchargrtf.Visible = False CommonDialog1.Filter = "Fichiers au format RTF (*.rtf)|*.rtf|(*.rtl)|*.rtl|(*.rtv)|*.rtv|(*.rtp)|*.rtp|(*.rfs)|*.rfs|" CommonDialog1.FilterIndex = 1 ' Définit le filtre par défaut(rtf) CommonDialog1.ShowOpen 'If Right(CommonDialog1.FileName, 3) = "rtf" Or Right(CommonDialog1.FileName, 3) = "RTF" Then RichTextBox1.LoadFile CommonDialog1.FileName, rtfRTF RichTextBox1.Locked = True 'impossible de modifier le doc.rtf 'End If End Sub Private Sub Form_Load() tpl = "" lecran = Int(Screen.Width / Screen.TwipsPerPixelX): hecran = Int(Screen.Height / Screen.TwipsPerPixelY) recran = 1: If lecran < 1800 Then recran = 0.9: If hecran < 700 Then recran = 0.8 'If lecran < 900 Then recran = 0.6 If recran < 1 Then Form1.Width = 10600: RichTextBox1.Width = 10000 Else Form1.Width = 16600: RichTextBox1.Width = 16000 'agrandir la RichTextBox1 si grand écran RichTextBox1.Text = "Chargez d'abord un document.rtf" End Sub Private Sub RichTextBox1_Click() Clipboard.Clear 'vider presse-papiers tpl = RichTextBox1.Text: pl0 = RichTextBox1.SelStart: If pl0 > 0 And pl0 <= Len(tpl) Then Label1 = ": curseur:" & Str(pl0) & " =>" & Mid(tpl, pl0, 1) pl1 = RichTextBox1.SelLength repe = Mid(tpl, pl0 + 1, pl1): Label1 = Str(pl0) & "," & repe & "," & Str(pl1) Clipboard.SetText Trim(Str(pl0)) & "," & Chr(34) & repe & Chr(34) & "," & Trim(Str(pl1)) & "," & Chr(34) & Chr(34) & "," ' Place le texte sur presse-papiers End Sub
2 sept. 2012 à 21:37
Qui peut me donner le moyen?
Merci.
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.