Bonjour,

J'utilise Gtk.Text_View et Gtk.Tag(s) pour faire à peu près ceci :

Sauf que le rouge débord à gauche de la zone rouge et un caractère en fin de chaîne qui ne devrait s'y trouver.

Normalement donc je devrais avoir :
Manuel a écrit : Bonjour

Pour faire ceci, j'ai utilisé la fonction Insert_With_Tag fournit dans gtktest.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 procedure Insert_With_Tag
     (Buffer : access Gtk_Text_Buffer_Record'Class;
      Tag    : String;
      Text   : String)
   is
      T : Gtk_Text_Tag;
      Iter, Start_Iter : Gtk_Text_Iter;
      Table : Gtk_Text_Tag_Table;
      Result : Boolean;
      pragma Warnings (Off, Result);
   begin
      Get_End_Iter (Buffer, Iter);
 
      if Tag = "" then
         Insert (Buffer, Iter, Text & ASCII.LF);
 
      else
         Table := Get_Tag_Table (Buffer);
         T := Lookup (Table, Tag);
 
         Insert (Buffer, Iter, Text);
         Copy (Source => Iter, Dest => Start_Iter);
         Backward_Chars (Start_Iter, Text'Length + 1, Result);
         Apply_Tag (Buffer, T, Start_Iter, Iter);
      end if;
   end Insert_With_Tag;

Comment remédier à mon problème ? s'il vous plaît, merci.