Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1905 connectés 

  FORUM HardWare.fr
  Programmation

  [Delphi] RichEdit, racourcit clavier et Menu !

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Delphi] RichEdit, racourcit clavier et Menu !

n°84920
Bruce
Music 4 your ears!
Posté le 30-12-2001 à 03:34:41  profilanswer
 

Voilà, j'ai un petit problème et j'arrive pas à trouver de solution élégante...
 
J'ai un composant RichEdit que j'utilise comme une sorte de WordPad. J'ai également créé un menu "Edition" assez classique mais au moment ou j'ajoute des racourcit claviers cela ne vas plus du tout.
 
J'explique, comme vous le savez par défaut le composant gère tout seul les évènements Ctrl+X, Ctrl+C, Ctrl+V, Suppr et autres Ctrl+A (couper, copier, coller, effacer et sélectionner tout). Seulement voilà, quand dans mon menu j'associe un élément du menu avec un racourcit clavier, Delphi prend celui-ci en compte et donc cela ne marche plus.
J'ai réussit sans mal à re-faire la majorité des fonctions puisque Delphi et le composant RichEdit comportent les procédures adéquat (telles que SelectAll et CopyToClipboard), mais pour le Suppr c'est la merde ! Je suis certain qu'il y as un moyen de pouvoir assigner un racourcit clavier à un menu sans que celui-ci prennent le "pouvoir"...
 
Merci d'avance.


---------------
A+++ Bruce - http://www.bheller.com
mood
Publicité
Posté le 30-12-2001 à 03:34:41  profilanswer
 

n°84928
rufo
Pas me confondre avec Lycos!
Posté le 30-12-2001 à 10:39:25  profilanswer
 

il fait quoi ton suppr?

n°84929
rufo
Pas me confondre avec Lycos!
Posté le 30-12-2001 à 10:39:25  profilanswer
 

Moi, pour mes soft, je me suis refais les fcts de couper/copier/coller qui marchent pour tous les composants qui contiennet du texte (memo, edit, richedit, combobox) etc...

 

[edtdd]--Message édité par rufo--[/edtdd]

n°84951
[SDF]Poire
Vive Grumly
Posté le 30-12-2001 à 12:56:02  profilanswer
 

Dans ton menu les raccourcis sont des raccourcis standards (Ctrl+C,....) ?


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°85032
Bruce
Music 4 your ears!
Posté le 30-12-2001 à 20:14:04  profilanswer
 

rufo : le Suppr devrais avoir un fonctionnement classique, cad effacer le texte sélectionné si il y en as un ou supprimer le caractère suivant celui ou est le currseur si il n'y as pas de texte sélectioné.
Le pb est que j'ai facilement reprogrammé la pluspart des fonctions (copytoclipboard, pastefromclipboard...) mais le Suppr est pas simple... Surtout si le currseur est en fin de ligne et qu'il doit faire remonter la ligne suivante...
 
[SDF]Poire : vi c la le pb ! Si je ne met pas de raccourcit sur les menus tout fonctionne exactement comme je le voudrais (c intégré au composant quoi...), par contre quand j'associe le raccourcit, c celui-ci qui prend la main et c pas cool... :sweat:


---------------
A+++ Bruce - http://www.bheller.com
n°85034
antp
Super Administrateur
Champion des excuses bidons
Posté le 30-12-2001 à 20:19:26  profilanswer
 

et si lors de l'action de la touche de raccourci tu envoie le pressage de touche "suppr" via un message Windows au TMemo/TEdit, ça marche pas ? (note que si ça marche pas ça fera peut-être une boucle sans fin :D, mais tu peux tj essayer)


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°85038
[SDF]Poire
Vive Grumly
Posté le 30-12-2001 à 21:05:52  profilanswer
 

Bruce a écrit a écrit :

 
 
[SDF]Poire : vi c la le pb ! Si je ne met pas de raccourcit sur les menus tout fonctionne exactement comme je le voudrais (c intégré au composant quoi...), par contre quand j'associe le raccourcit, c celui-ci qui prend la main et c pas cool... :sweat:  




C ptet pas cool mais C 1 peu normal.... en fait tu veux jute qu'il y ait l'affichage du raccourci dans le menu mais qu'il ne fasse rien ?
(G un doute sur le fait que G bien tout compris...)


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°85058
Bruce
Music 4 your ears!
Posté le 30-12-2001 à 22:28:11  profilanswer
 

antp a écrit a écrit :

et si lors de l'action de la touche de raccourci tu envoie le pressage de touche "suppr" via un message Windows au TMemo/TEdit, ça marche pas ? (note que si ça marche pas ça fera peut-être une boucle sans fin :D, mais tu peux tj essayer)  




 
Non, ça c sûr ça marchera pas ;)


---------------
A+++ Bruce - http://www.bheller.com
n°85059
Bruce
Music 4 your ears!
Posté le 30-12-2001 à 22:28:46  profilanswer
 

[SDF]Poire a écrit a écrit :

 
C ptet pas cool mais C 1 peu normal.... en fait tu veux jute qu'il y ait l'affichage du raccourci dans le menu mais qu'il ne fasse rien ?
(G un doute sur le fait que G bien tout compris...)  




 
Tout à fait ! C exactement ça... Il y as certainement un moyen d'afficher le raccourcit sans qu'il prenne la main... non ? :)


---------------
A+++ Bruce - http://www.bheller.com
n°85060
[SDF]Poire
Vive Grumly
Posté le 30-12-2001 à 22:35:57  profilanswer
 

Bruce a écrit a écrit :

 
 
Tout à fait ! C exactement ça... Il y as certainement un moyen d'afficher le raccourcit sans qu'il prenne la main... non ? :)  




Tout est possible :D Je te cherche ça...


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
mood
Publicité
Posté le 30-12-2001 à 22:35:57  profilanswer
 

n°85062
Bruce
Music 4 your ears!
Posté le 30-12-2001 à 22:38:57  profilanswer
 

[SDF]Poire a écrit a écrit :

 
Tout est possible :D Je te cherche ça...  




 
Marci ! :D


---------------
A+++ Bruce - http://www.bheller.com
n°85063
antp
Super Administrateur
Champion des excuses bidons
Posté le 30-12-2001 à 22:42:21  profilanswer
 

j'ai trouvé ! :sol:
bon c'est vraiment de la bidouille, mais tu peux tj essayer :
déjà n'associe aucun shortcut à l'item (puisque non nécessaire)
sur ta form, tu fais alt+f12 ("view as text" ), là tu cherches la déclaration de ton item ou action (si tu utilises des actionlist, ce qui est nettement plus propre que de coder directement tout dans les tmenuitem).
ensuite tu as par ex:
 
     object aaa1: TMenuItem
        Caption = 'Copier CTRL+V'
 
(ici donc le ctrl+v est pas aligné, il est collé au label)
suffit de changer ça en :
 
     object aaa1: TMenuItem
        Caption = 'Copier'#9'CTRL+V'
 
et là le ctrl+v se retrouvera aligné avec les autres shortcuts

 

[edtdd]--Message édité par antp--[/edtdd]


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°85064
[SDF]Poire
Vive Grumly
Posté le 30-12-2001 à 22:53:00  profilanswer
 

antp a écrit a écrit :

j'ai trouvé ! :sol:
bon c'est vraiment de la bidouille, mais tu peux tj essayer :
déjà n'associe aucun shortcut à l'item (puisque non nécessaire)
sur ta form, tu fais alt+f12 ("view as text" ), là tu cherches la déclaration de ton item ou action (si tu utilises des actionlist, ce qui est nettement plus propre que de coder directement tout dans les tmenuitem).
ensuite tu as par ex:
 
     object aaa1: TMenuItem
        Caption = 'Copier CTRL+V'
 
(ici donc le ctrl+v est pas aligné, il est collé au label)
suffit de changer ça en :
 
     object aaa1: TMenuItem
        Caption = 'Copier'#9'CTRL+V'
 
et là le ctrl+v se retrouvera aligné avec les autres shortcuts  
 
 




Une tabulation :heink:  ? T sur que ça marche avec n'importe quelle longueur pour les titres des menus ?
 
edit : Effectivement ça marche... Mais C pas super pratique nivo conception....

 

[edtdd]--Message édité par [SDF]Poire--[/edtdd]


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°85067
Bruce
Music 4 your ears!
Posté le 30-12-2001 à 23:09:15  profilanswer
 

Pas con, je vais essayer.


---------------
A+++ Bruce - http://www.bheller.com
n°85071
Bruce
Music 4 your ears!
Posté le 30-12-2001 à 23:15:39  profilanswer
 

Bon, en effet ça marche mais voilà cela me pose un autre pb que vous ne pouviez pas deviner :)
 
Voilà, le but de cette app, c de faire un guide (tutorial) de Delphi, et je suis parti dans l'idée de faire un "clone" de WordPad en quelques cours. Bref pas simple d'expliquer aux newbies qu'il faut mettre un #9 pour que ça marche...
 
Donc autre question, existe-t-il un moyen de re-coder le Suppr sans se prendre la tête ? Un peu comme les autres fonctions qui sont super simples à faires !


---------------
A+++ Bruce - http://www.bheller.com
n°85074
[SDF]Poire
Vive Grumly
Posté le 30-12-2001 à 23:27:46  profilanswer
 

Bruce a écrit a écrit :

Bon, en effet ça marche mais voilà cela me pose un autre pb que vous ne pouviez pas deviner :)
 
Voilà, le but de cette app, c de faire un guide (tutorial) de Delphi, et je suis parti dans l'idée de faire un "clone" de WordPad en quelques cours. Bref pas simple d'expliquer aux newbies qu'il faut mettre un #9 pour que ça marche...
 
Donc autre question, existe-t-il un moyen de re-coder le Suppr sans se prendre la tête ? Un peu comme les autres fonctions qui sont super simples à faires !  




Essaye CustomRichEdit.SelText := '';


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°85102
Bruce
Music 4 your ears!
Posté le 31-12-2001 à 02:54:37  profilanswer
 

[SDF]Poire a écrit a écrit :

 
Essaye CustomRichEdit.SelText := '';  




 
Non, là tu oublie le plus dur, effacer le texte sélectionné c super simple :

Code :
  1. RichEdit1.ClearSelection;


 
Mais là ou ça deviens plus complexe c quand tu n'as pas de texte sélectionné auquel cas le Suppr efface le caractère suivant la position du cursseur et si il est en fin de ligne supprime le retour chariot...


---------------
A+++ Bruce - http://www.bheller.com
n°85113
rufo
Pas me confondre avec Lycos!
Posté le 31-12-2001 à 09:45:37  profilanswer
 

Bruce a écrit a écrit :

 
 
Non, là tu oublie le plus dur, effacer le texte sélectionné c super simple :

Code :
  1. RichEdit1.ClearSelection;


 
Mais là ou ça deviens plus complexe c quand tu n'as pas de texte sélectionné auquel cas le Suppr efface le caractère suivant la position du cursseur et si il est en fin de ligne supprime le retour chariot...  




 
ben, il suffit de récupérer la position du curseur (selstart pour avoir la position en nb de caractères, CaractPos.x et .y pour avoir la ligne et la colonne) et après, tu utilises en fct de la position du curseur un Copy(chaine, debut, long) adhéquat :)

n°85114
rufo
Pas me confondre avec Lycos!
Posté le 31-12-2001 à 09:46:48  profilanswer
 

rem : si tu as mis à true la propriété wrap, ça va être plus simple pluis que tu pourras remonter toute la ligne suivante et non pas le mot s'il tient sur la ligne précédente...

n°85124
[SDF]Poire
Vive Grumly
Posté le 31-12-2001 à 11:02:37  profilanswer
 

if RichEdit1.SelLength = 0 then
    RichEdit1.SelLength := 1;
   
  RichEdit1.ClearSelection;

 

[edtdd]--Message édité par [SDF]Poire--[/edtdd]


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°85201
Bruce
Music 4 your ears!
Posté le 31-12-2001 à 16:22:18  profilanswer
 

[SDF]Poire a écrit a écrit :

if RichEdit1.SelLength = 0 then
    RichEdit1.SelLength := 1;
   
  RichEdit1.ClearSelection;  
 
 




 
Bravo ! Excellent, ct tout con et j'y avais même pas pensé :)
 
 :jap:  :jap:  :jap:


---------------
A+++ Bruce - http://www.bheller.com
n°85261
[SDF]Poire
Vive Grumly
Posté le 01-01-2002 à 04:48:42  profilanswer
 

Bruce a écrit a écrit :

 
 
Bravo ! Excellent, ct tout con et j'y avais même pas pensé :)
 
 :jap:  :jap:  :jap:  




Bonne Année !!!  :benetton:  
 :hello:


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [Delphi] RichEdit, racourcit clavier et Menu !

 

Sujets relatifs
Pb sur autoplay menu studio 3.0 proautoplay menu studio 3.0 pro
[Delphi] couleur...[delphi] pb avec les char et string
DivX Organizer en Delphi --> Beta Test SVPavis de réception de courriel (delphi)
modifier l'extension d'un fichier avec delphiBesoin d'aide sous Delphi 6
[VBA & Excel] Enlever l'utilisation du clavier ?Test Chat fait en Delphi
Plus de sujets relatifs à : [Delphi] RichEdit, racourcit clavier et Menu !


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR