[Gambas-user] Problem to use a TextArea

linus linuxos at ...1896...
Wed Apr 28 01:16:30 CEST 2010


Thank's Fabien it works fine now.

so cool..

Olivier


Le mercredi 28 avril 2010 à 01:09 +0200, Fabien Bodard a écrit :
> it's utf8 use :
> 
> String.Instr instead Intr
> 
> http://gambasdoc.org/help/comp/gb/string/instr
> 
> 2010/4/28 linus <linuxos at ...1896...>:
> >
> > Hi all,
> >
> > I'm using a TextArea in a little project like a Text Editor.
> >
> > When I add the part of code to search in the text of this TextArea, I
> > have a problem during search text whith the command 'instr'.
> >
> > In fact, when this command find accented characters, it count 2
> > characters instead of 1 and the position of the search at the end it
> > false.
> >
> > Does any body have an explication about this problem please ?
> >
> > Joined the code to search in the TextArea
> >
> > ---------------------------------------------------------------------
> >
> >
> > Public SAVMARKER as Interger
> >
> >
> > Public Button1_Click()
> >
> >  SearchTextInEditor(1)
> >
> > End
> >
> >
> > PUBLIC SUB SearchTextInEditor(MODE AS Integer)
> >
> >  ' MODE: 0  => From the beginning of the text
> >  ' MODE: 1  => After the last search
> >
> >  DIM IndexCarac AS Integer
> >  DIM CaracTexte AS String
> >  DIM IndexRecherche AS Integer
> >  DIM LongueurRecherche AS Integer
> >
> >  TextBox39.Text = Replace(TextBox39.Text, "\"", "")
> >  TextBox40.text = Replace(TextBox40.text, "\"", "")
> >
> >  IF TextArea1.Length > 0 THEN
> >
> >    IF TextBox39.text = "" THEN
> >      Message.Warning(("Please entrer text to search !"), ("Close"))
> >      RETURN
> >    END IF
> >
> >    Application.Busy = 1
> >
> >    SELECT CASE MODE
> >      CASE 0
> >        ' search from the beginning of the text
> >        SAVMARKER = 0
> >        IF ToggleButton5.Value = TRUE THEN
> >          ' Use the case sensitive
> >          IndexRecherche = InStr(TextArea1.Text, TextBox39.Text,
> > SAVMARKER, gb.Text)
> >        ELSE
> >          ' No case sensitive
> >          IndexRecherche = InStr(Lower$(TextArea1.Text), Lower
> > $(TextBox39.Text), SAVMARKER, gb.Text)
> >        END IF
> >
> >        IF IndexRecherche > 0 THEN
> >
> >          $TextEditor.Select(IndexRecherche - 1, Len(TextBox39.Text))
> >          $TextEditor.EnsureVisible()
> >          SAVMARKER = IndexRecherche + Len(TextBox39.Text)
> >          PRINT "IndexRecherche=" & IndexRecherche
> >          IF SAVMARKER > TextArea1.Length THEN
> >            SAVMARKER = TextArea1.Length
> >          END IF
> >
> >          LongueurRecherche = Len(TextBox39.Text)
> >
> >        ELSE
> >          Application.Busy = 0
> >          Message.Info(("Search finished. End of list attained."),
> > ("Close"))
> >          RETURN
> >        END IF
> >
> >      CASE 1
> >        ' Search following ...
> >        IF ToggleButton5.Value = TRUE THEN
> >          ' Use the case sensitive
> >          IndexRecherche = InStr(TextArea1.Text, TextBox39.Text,
> > SAVMARKER, gb.Text)
> >        ELSE
> >          ' Ne pas tenir compte de la casse
> >          IndexRecherche = InStr(Lower$(TextArea1.Text), Lower
> > $(TextBox39.Text), SAVMARKER, gb.Text)
> >        END IF
> >
> >        IF IndexRecherche > 0 THEN
> >          TextArea1.Select((IndexRecherche - 1), Len(TextBox39.Text))
> >          SAVMARKER = IndexRecherche + Len(TextBox39.Text)
> >          IF SAVMARKER > TextArea1.Length THEN
> >            SAVMARKER = TextArea1.Length
> >          END IF
> >
> >        ELSE
> >          Application.Busy = 0
> >          Message.Info(("Search finished. End of list attained."),
> > ("Close"))
> >          RETURN
> >        END IF
> >    END SELECT
> >  END IF
> >
> >  Application.Busy = 0
> >
> >
> > END
> >
> > -----------------------------------------------------------------------------
> >
> > Thank you in advance.
> >
> > --
> > Olivier CRUILLES
> > Email: linuxos at ...1896...
> >
> >
> >
> > ------------------------------------------------------------------------------
> > _______________________________________________
> > Gambas-user mailing list
> > Gambas-user at lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/gambas-user
> >
> 
> ------------------------------------------------------------------------------
> _______________________________________________
> Gambas-user mailing list
> Gambas-user at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gambas-user
> 
-- 
Olivier CRUILLES
Email: linuxos at ...1896...

      * hypoaristerolactotherapie : methode de depannage des machines
        par le coup de pied en bas a gauche.
      * Mais si, Linux est user-friendly. Mais Linux il choisit ses
        amis, lui !
      * Software is like sex, it's better when it's free (Linus Torvalds)






More information about the User mailing list