Forum Delphi.cz

Delphi => Obecné => Téma založeno: Stanislav Hruška 06-05-2019, 10:36:34

Název: Actionmanager nefungujú mi ShortCut
Přispěvatel: Stanislav Hruška 06-05-2019, 10:36:34
V jednej aplikácii mi to funguje bez problémov, tak som to riešenie preniesol do druhej aplikácie. Ale nefungujú :'(
Má niekto tip v čom by mohol byť problém? Okrem mňa!
Název: Re:Actionmanager nefungujú mi ShortCut
Přispěvatel: Stanislav Hruška 06-05-2019, 19:13:56
Nefunguje mi to na všetkých miestach kde som to skúšal. Tri formuláre s asi spolu 25 - 30 pod formulármi. Ja neviem, žeby niekde niečo také použil. Ale preverím. Ďakujem za tip.
Dnes som celý deň nič iné nerobil, len všetko kontroloval a porovnával s funkčným projektom. Výsledok je nulový.
Název: Re:Actionmanager nefungujú mi ShortCut
Přispěvatel: Stanislav Hruška 06-05-2019, 20:26:27
Nič som nenašiel. Tipovacia súťaž pokračuje.
Název: Re:Actionmanager nefungujú mi ShortCut
Přispěvatel: vandrovnik 07-05-2019, 10:46:29
Nemáš zároveň vytvořený jiný formulář, který používá stejnou zkratku? Dřív aplikace přednostně testovala zkratky pro aktuální formulář, ale od nějaké verze to tak nedělá, takže se místo akce v aktuálním formuláři spustí akce formuláře, který třeba ani není zobrazený, jen je vytvořený (a možná vlastněný tím aktuálně zobrazeným formulářem).
Název: Re:Actionmanager nefungujú mi ShortCut
Přispěvatel: Stanislav Hruška 07-05-2019, 11:28:04
Mám vytvorený a skrytý hlavný formulár aplikácie. Tam si to skontroloval a žiadne skratky tam nemám.
Nemám tam ani skratky typu "&Prvý", ktoré automaticky vytvára ActionManager. Ale tie na iných formulároch nevadia.
Název: Re:Actionmanager nefungujú mi ShortCut
Přispěvatel: Morrison 07-05-2019, 11:38:34
A do události Form.OnShortcut se ti to dostane?
Název: Re:Actionmanager nefungujú mi ShortCut
Přispěvatel: Stanislav Hruška 07-05-2019, 12:06:56
Mám frmMeter a na ňom 3 podfromuláre (frmsubMeter, frmsubMeterType a frmsubMeterPenalty). Do frmMeter.OnShortcut sa dostane. Do ostatných nie. Dal som tam ShowMessage(). A to už pri stlačení klávesu Ctrl. Začalo mi to reagovať. Síce zle, ale to je asi spojené so zobrazením hlášky.
Na frmMeter nemám žiaden ActionManager. Je tam AdvOfficePager a pár drobností.
Název: Re:Actionmanager nefungujú mi ShortCut
Přispěvatel: Stanislav Hruška 07-05-2019, 12:10:42
Oprava: reaguje to správne :)
To je veľký pokrok.
Už mi len treba vysvetliť o čo ide a ako to napraviť.
Název: Re:Actionmanager nefungujú mi ShortCut
Přispěvatel: Stanislav Hruška 07-05-2019, 14:31:20
Medzitým som nainštaloval nový balík TMS component pac a Cryptography. Neviem či to môže mať na to vplyv.
Ja už neviem čo si mám o tom myslieť. Udalosť frmMeter.OnShortcut zbehne, ale výsledok je asi podľa počasia.
Název: Re:Actionmanager nefungujú mi ShortCut
Přispěvatel: vandrovnik 07-05-2019, 17:14:31
nenastavil sis tedy u nějaké akce klávesovou zkratku samotné Ctrl? ;-)
Název: Re:Actionmanager nefungujú mi ShortCut
Přispěvatel: Stanislav Hruška 07-05-2019, 21:34:03
Kód: Delphi [Vybrat]
  1. procedure TCustomNavigator.SetShortCut;
  2. begin
  3. //ShowMessage('SetShortCut - '+oGlobalVar.ActualObject.Vst.Name);
  4.   if FActToolBar.CanFocus then
  5.   begin
  6.     FActions[naFirst].ShortCut := ShortCut(Word('F'), [ssCtrl]);
  7.     FActions[naBefor].ShortCut := ShortCut(Word('B'), [ssCtrl]);
  8.     FActions[naNext].ShortCut := ShortCut(Word('N'), [ssCtrl]);
  9.     FActions[naLast].ShortCut := ShortCut(Word('L'), [ssCtrl]);
  10.     FActions[naInsert].ShortCut := TextToShortCut('Ins');
  11.     FActions[naDelete].ShortCut := TextToShortCut('Del');
  12.     FActions[naEdit].ShortCut := ShortCut(Word('E'), [ssCtrl]);
  13.     FActions[naPost].ShortCut := ShortCut(Word('S'), [ssCtrl]);
  14.     FActions[naCancel].ShortCut := TextToShortCut('Esc');
  15.     FActions[naPrint].ShortCut := ShortCut(Word('P'), [ssCtrl]);
  16.   end;
Ako je vidieť NIE. Ono to tam vlezie pri stlačení akéhokoľvek klávesu. Aj kurzorových šípok a spol.