Avatar billede erve Nybegynder
06. februar 2001 - 12:34 Der er 9 kommentarer og
1 løsning

TShortcut

Nogen der ved hvordan man ændrer teksten til shortcut i et Tmenuitem?
Avatar billede pstric Nybegynder
06. februar 2001 - 12:36 #1
Brug et &
Avatar billede borrisholt Novice
06. februar 2001 - 12:36 #2
Kig på funktionnen ShortCutToText

og TextToShortCut.

Jens B
Avatar billede erve Nybegynder
06. februar 2001 - 12:43 #3
Kan godt være spørgsmålet var lidt kortfattet, men
det handler om at når man har valgt en shortCut, f.eks Ctrl+A til et menuitem, vil der i menuen stå caption + shortcut-teksten. feks \"Save Ctrl+S\". Det vil jeg f.eks gerne ændre til \"Save ControlTast + S\", men jeg kan ikke lige se at det er muligt via TMenuitem.ShortCut.
Avatar billede delphi Nybegynder
06. februar 2001 - 12:45 #4
Mit svar vil være, at det sikkert kan ændres, evt. i en OnDraw eller lignende event for dit menu item, men mit råd er: La\' vær\'!  Du går væk fra en etableret Windows standard og det skal du dæleme ha\' gode grunde til.

Peter
Avatar billede erve Nybegynder
06. februar 2001 - 12:47 #5
Har jeg prøvet, men denne vil kun aceptere legale shortcutkombinationer. Ikke selvdefinerede tekster.
Avatar billede borrisholt Novice
06. februar 2001 - 12:53 #6
fra Online hjælpen :

TMenuItem.OnDrawItem
-------------------------------------------------
Occurs when an owner-draw menu needs to be drawn.


Så du sætter din menus OwnerDrawed property til true .. Så sætter du et OnDrawEvent på dit (dine) menuItems ... Het kan fx. Se således ud :


procedure TForm1.Save1DrawItem(Sender: TObject; ACanvas: TCanvas;
  ARect: TRect; Selected: Boolean);
begin
  ACanvas.TextOut(1,1,\'HEST\');
end;


Jens B
Avatar billede delphi Nybegynder
06. februar 2001 - 12:54 #7
Det var sådan set det jeg mente....men stadig væk: La vær....  (skumle nu skal jeg nok gå....)
Avatar billede borrisholt Novice
06. februar 2001 - 13:00 #8
Ready to run :

procedure TForm1.Save1DrawItem(Sender: TObject; ACanvas: TCanvas;
  ARect: TRect; Selected: Boolean);
var
  s : String;
  i : Integer;
begin
  S:=ShortCutToText(  (Sender as TMenuItem).ShortCut);
  i:= pos(\'Ctrl\',s);
  if i<> 0 then
  begin
    Insert(\'Hest\',s,i);
    i:= pos(\'Ctrl\',s);
    Delete(s,i,4);
  end;
  ACanvas.TextOut(1,1,\'HEST \' + s);
end;


Men LAD VÆRE !!!!!!!!!

Jens B
Avatar billede borrisholt Novice
06. februar 2001 - 13:22 #9
erve  >> Er du gået hjem ?

Jens B
Avatar billede erve Nybegynder
10. juni 2001 - 16:36 #10
Så er der accepteret
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester