| |
Membro registado 342 mensagems Popularité : +30 (32 votes) |
|
Publicado em maio, 21 2020 - 3:28 PM |
Bonjour
Je fais des essais avec l'assemblage DotNet Scintilla trouvé ici : https://github.com/jacobslusser/ScintillaNET Je suis parti de l'exemple fourni par Jurassic Pork dans ce post : https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windev/212635-net-dotnetdelegue-scintillanet-214474/read.awp… Merci à lui
Pour moi le but est d'afficher et manipuler du code SQL
Ça fonctionne plutôt pas mal Le seul problème que j'ai est la détection de la modification dans le champ DotNet
J'utilise ce code pour intercepter l'évènement de modification :
DOTNET_Scintilla.add_TextChanged(DotNetDélégué(_TextChange, "System.EventHandler"))
Ça ne plante pas mais ça n'a aucun effet !
J'utilise d'autres évènements qui fonctionnent très bien :
DOTNET_Scintilla.add_KeyDown(DotNetDélégué(_KeyDown, "System.Windows.Forms.KeyEventHandler")) DOTNET_Scintilla.add_MouseDown(DotNetDélégué(_MouseDown, "System.Windows.Forms.MouseEventHandler")) DOTNET_Scintilla.add_GotFocus(DotNetDélégué(_GotFocus, "System.EventHandler")) DOTNET_Scintilla.add_SizeChanged(DotNetDélégué(_SizeChanged, "System.EventHandler"))
Je dois louper quelque chose ... Auriez-vous une idée ?
-- Pascal H. http://phapps.e-monsite.com |
| |
| |
| | | |
|
| | |
| |
Membro registado 962 mensagems Popularité : +183 (185 votes) |
|
Publicado em maio, 22 2020 - 5:56 PM |
hello, non tu ne loupes rien, il y a pas mal d'événements de ScintillaNet qui ne fonctionnent pas dans windev. J'ai essayé l'événement TextChanged avec une textbox dans Windev, cela fonctionne.
-- Ami calmant, J.P |
| |
| |
| | | |
|
| | |
| |
Membro registado 342 mensagems Popularité : +30 (32 votes) |
|
Publicado em maio, 22 2020 - 7:35 PM |
Salut Jurassic Pork Merci de ta réponse
J'ai regardé un peu dans les sources de l'assemblage. Visiblement TextChanged est un évènement hérité et donc pas directement implémenté par l'assemblage. Comme d'autres d'ailleurs. Ceci certains évenéments implémentés ne fonctionnent pas non plus, comme ZoomChanged.
Bon j'arrive à faire à peu près ce que je veux. Avec KeyDown et KeyPress je gère l'état modifié, j'intercepte les raccourcis que j'utilisais etc. Seul CTRL S mi pose problème car ça génère un device control 3, affiché "DC3" dans le champ. Je suis obligé de nettoyer quand j'intercepte ça (idem pour CTRL F ou CTRL H)
Cet assemblage n'est plus maintenu il me semble, c'est dommage ... Pas le temps de me mettre à dotnet
-- Pascal H. http://phapps.e-monsite.com |
| |
| |
| | | |
|
| | |
| |
Membro registado 962 mensagems Popularité : +183 (185 votes) |
|
Publicado em maio, 23 2020 - 12:45 AM |
hello, sinon en équivalent, il y a aussi le contrôle dotnet FastColoredTextBox disponible ici : https://github.com/PavelTorgashov/FastColoredTextBox Voici un exemple d'utilisation pour coloration syntaxique de texte html :
FCTB.Language = Language.HTML FCTB.Text = fChargeTexte("M:\test\example.html") FCTB.add_TextChanged(DotNetDélégué("TexteChangé","EventHandler<FastColoredTextBoxNS.TextChangedEventArgs>"))
avec la procédure TexteChangé :
Procedure TexteChangé(sender,args est un TextChangedEventArgs) Trace("Texte Changé : " + args.ChangedRange.Text )
-- Ami calmant, J.P |
| |
| |
| | | |
|
| | |
| |
Membro registado 962 mensagems Popularité : +183 (185 votes) |
|
Publicado em maio, 23 2020 - 12:54 AM |
oops le code:wl m'a changé une ligne il y a une erreur dans le add_TextChanged , c'est :
FCTB.add_TextChanged(DotNetDélégué("TexteChangé","EventHandler<FastColoredTextBoxNS.TextChangedEventArgs>"))
-- Ami calmant, J.P |
| |
| |
| | | |
|
| | |
| |
Membro registado 342 mensagems Popularité : +30 (32 votes) |
|
Publicado em maio, 23 2020 - 12:06 PM |
Super, merci pour l'info Je vais essayer et comparer avec Scintilla Je ferai un retour après mes essais Bon week-end
-- Pascal H. http://phapps.e-monsite.com |
| |
| |
| | | |
|
| | |
| |
Membro registado 342 mensagems Popularité : +30 (32 votes) |
|
Publicado em maio, 29 2020 - 11:43 AM |
Un petit retour sur l'utilisation de FastColoredTextBox https://www.codeproject.com/Articles/161871/Fast-Colored-TextBox-for-syntax-highlighting-2 https://github.com/PavelTorgashov/FastColoredTextBox
Ça fonctionne plutôt pas mal Bon il y a plein de choses que je ne sais pas encore faire mais ça viendra ... Il faut trouver la bonne syntaxe
Voici quelques exemples d'utilisation avec un champ que j'ai nommé DOTNET_FCTB :
DOTNET_FCTB.Language = Language.SQL
clDefaultFont est System.Drawing.Font("Consolas", 9) DOTNET_FCTB.Font = clDefaultFont
DOTNET_FCTB.Zoom = 90
DOTNET_FCTB.AutoCompleteBracketsList= "()[]{}"
DOTNET_FCTB.AllowDrop = Vrai DOTNET_FCTB.BackColor = Color.White DOTNET_FCTB.CurrentLineColor = Color.LightBlue DOTNET_FCTB.SelectionColor = Color.FromArgb(153,201,239) DOTNET_FCTB.ShowLineNumbers = Vrai DOTNET_FCTB.UpperCase()
DOTNET_FCTB.add_KeyDown(DotNetDélégué(_KeyDown, "System.Windows.Forms.KeyEventHandler")) DOTNET_FCTB.add_MouseDown(DotNetDélégué(_MouseDown, "System.Windows.Forms.MouseEventHandler")) DOTNET_FCTB.add_TextChanged(DotNetDélégué(_TextChanged,"EventHandler<FastColoredTextBoxNS.TextChangedEventArgs>")) DOTNET_FCTB.add_ZoomChanged(DotNetDélégué(_ZoomChanged,"EventHandler"))
DOTNET_FCTB.Text = "SELECT * FROM MaTable" DOTNET_FCTB.OpenFile("c:\temp\exemple.sql", Encoding.UTF8)
Procedure _MouseDown(sender <utile>, pclArgs est MouseEventArgs) clBouton est System.Windows.Forms.MouseButtons clBouton <- pclArgs.get_Button()
SI clBouton = MouseButtons.Right ALORS OuvreMenuContextuel(MENU_FCTB) FIN
Procedure _TextChanged(sender <utile>, args est un TextChangedEventArgs <utile>) Trace("Texte modifié : " + args.ChangedRange.Text )
-- Pascal H. http://phapps.e-monsite.com |
| |
| |
| | | |
|
| | |
| |
Publicado em setembro, 20 2020 - 1:57 PM |
Hello,
est-ce que par hasard tu as réussi a mettre en place le code WL avec cet assemblage ? |
| |
| |
| | | |
|
| | |
| |
Membro registado 342 mensagems Popularité : +30 (32 votes) |
|
Publicado em setembro, 20 2020 - 3:31 PM |
Bonjour Olivier
Non désolé, j'utilise juste le paramètre fourni pour le SQL. Côte personnalisation je n'ai pas du tout regardé.
Si tu trouves comment faire ça pourra intéresser du monde Il y a un projet exemple (C# et VB) livré avec, regarde de ce côté là.
Pascal
-- Pascal H. http://phapps.e-monsite.com |
| |
| |
| | | |
|
| | |
| |
Publicado em novembro, 09 2020 - 1:16 PM |
Bonjour, je me permets de relancer le post : - avez-vous réussi a mettre le WL dans le FastColoredTextBox ? - pour Scintilla, les évènement "touche enfoncée" et "touche relachée" ne fonctionne pas, le code n'est pas exécuté. Une idée du pourquoi ?
Merci d'avance et excellente journée |
| |
| |
| | | |
|
| | |
| |
Membro registado 342 mensagems Popularité : +30 (32 votes) |
|
Publicado em novembro, 09 2020 - 3:15 PM |
Bonjour Olivier
Je n'ai pas essayé d'implémenter WL, je n'en ai pas le besoin pour l'instant (+ manque de temps) Concernant les événements KeyDown et KeyPress ils fonctionnent très bien
Exemple pour KeyDown :
DOTNET_Scintilla.add_KeyDown(DotNetDélégué(_KeyDown, "System.Windows.Forms.KeyEventHandler"))
Procedure _KeyDown(pclParam1 est System.Object <utile>, pclParam2 est KeyEventArgs <utile>)
clKeyCode est System.Windows.Forms.Keys clKeyCode <- pclParam2.KeyCode
_Trace(clKeyCode.value__)
Par contre, d'autres évènements ne fonctionnent pas, d'où mon passage sur FastColoredTextBox. FastColoredTextBox est fonctionnel tout de suite pour du SQL, c'est ce qu'il me fallait.
Mais le sujet m’intéresse et j'y reviendrais
-- Pascal H. http://phapps.e-monsite.com |
| |
| |
| | | |
|
| | |
| |
Publicado em novembro, 10 2020 - 1:06 PM |
Effectivement ... je passais bêtement par les fonctions internes du champ .net de Windev.
Je suppose que les actions sont interceptées avant par l'assemblage, avec ton exemple c'est parfait !!
Un grand merci ! |
| |
| |
| | | |
|
| | |
| |
Membro registado 342 mensagems Popularité : +30 (32 votes) |
|
Publicado em novembro, 10 2020 - 1:54 PM |
| |
| |
| | | |
|
| | |
| |
Publicado em novembro, 11 2020 - 8:01 AM |
Bonjour Je voudrais pouvoir utiliser FastColoredTextBox dans un projet N'ayant jamais utilisé un champ ou composant externe avec WinDev , j'avoue être complètement perdu pour la mise en œuvre Je ne sais pas par exemple ou mettre la dll et ce qu'il faudrait mettre en plus et comment l'intégrer dans un projet .
Je sais que c'est un peut gonflé de ma part et je m'en excuse sincèrement, mais auriez-vous un exemple de projet basic que je pourrais analyse pour voir comment cela fonctionne .
Encore mille excuses pour l'audace. Bonne journée. |
| |
| |
| | | |
|
| | |
| |
Membro registado 510 mensagems Popularité : +18 (18 votes) |
|
Publicado em novembro, 11 2020 - 1:16 PM |
| |
| |
| | | |
|
| | |
| |
Publicado em novembro, 12 2020 - 3:18 PM |
Bonjour Merci beaucoup pour la réponse , je viens de regarder et cela vas effectivement beaucoup m'aider je vous souhaite une excellente journée . |
| |
| |
| | | |
|
| | |
| |
Membro registado 342 mensagems Popularité : +30 (32 votes) |
|
Publicado em novembro, 13 2020 - 11:30 AM |
Je vais ajouter un petit projet avec un exemple pour les deux composants. Je crois qu'on ne peut joindre un fichier ici, je passerai par le dépôt PCSOFT.
-- Pascal H. http://phapps.e-monsite.com |
| |
| |
| | | |
|
| | |
| |
Membro registado 342 mensagems Popularité : +30 (32 votes) |
|
Publicado em novembro, 13 2020 - 12:20 PM |
| |
| |
| | | |
|
| | |
| |
Publicado em dezembro, 02 2020 - 3:24 PM |
Merci Pascal pour cet exemple que j'ai utilisé immédiatement !
Dans mon cas, j'ai une liste de tables et, pour chacune, leurs colonnes que je souhaite pouvoir déplacer dans un ScintillaNet configuré pour SQL.
J'essaye maintenant d'implémenter du drag and drop mais malgré mes tâtonnement, je n'arrive pas à le faire fonctionner.
Quelqu'un a-t-il déjà joué avec cet événement ? |
| |
| |
| | | |
|
| | |
| |
Publicado em dezembro, 10 2020 - 1:14 PM |
Hello,
Je butte sur le problème de l'interception des ctrl-s qui me font des entrées DC3comme expliqué plus par hpascal plus haut ... j'essaie de mettre en place certaine fonction ( comme le Ctrl.s ) , sans succès pour l'instant ...
A quel endroit vous filtrez ça ? j'ai essayé un peu tout ce que je connaissais ... sauf la solution je crois ... |
| |
| |
| | | |
|
| | |
| |
Membro registado 342 mensagems Popularité : +30 (32 votes) |
|
Publicado em dezembro, 10 2020 - 8:02 PM |
Bonjour
C'est pour ce genre de choses que je suis passé à FastColoredTextBox qui fonctionne beaucoup mieux (pour mon usage en tout cas)
-- Pascal H. http://phapps.e-monsite.com |
| |
| |
| | | |
|
| | |
| |
Publicado em janeiro, 28 2022 - 4:17 PM |
Bonjour si quelqu'un arrive à faire fonctionner l'autocomplète ?
Merci d'avance |
| |
| |
| | | |
|
| | |