Toolbar / Statusbar "activate"

Nutzung, Komponenten, .NET

Moderator: Moderatoren

ich verwende

XbpStatusbar()
2
50%
XbpToolbar()
1
25%
eine 3-PP Lösung
0
Keine Stimmen
eine eigene Lösung
0
Keine Stimmen
nichts davon
1
25%
 
Abstimmungen insgesamt : 4

Toolbar / Statusbar "activate"

Beitragvon AUGE_OHR » Mo, 19. Jan 2015 22:19

wenn ich mir XbpToolBar() / XbpToolBarButton() ansehe habe ich kein Codeblock Slot "activate" ?

ich frage deshalb weil man es ja wie Buttons benutzt wird und ein "activate" Slot doch logisch wäre.

ich habe zwar über den
Code: Alles auswählen
XbpToolBarButton():index
die Möglichkeit einer auswertung -> Aktion aber der (unschlagbare) Vorteil von Codeblöcken ist ja das man sie ausführen kann "wann" und "wo" ( Thread ) man will !

ich kann ja auch bei
Code: Alles auswählen
XbpToolBarButton():addItem( [<cCaption>], [<cKey>] ) => <oMenu>
nichts weiter eingeben was eine Aktion bewirken könnte.

dito. mit XbpStatusBar() / XbpStatusBarPanel() was man auch Button (F1-F12) mässig verwenden könnte.
was ich bekomme ist o:index, o:caption etc ... aber kein Codeblock Slot zum evaluieren :(

wie hab ihr das gelöst ?
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
 
Beiträge: 10063
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: Toolbar / Statusbar "activate"

Beitragvon Werner_Bayern » Di, 20. Jan 2015 17:26

Code: Alles auswählen
oStatusbar:panelClick := {|oPanel| if(oPanel:index == 3, if(.not. startedatei("calc.exe"),;
   fehler("Taschenrechner nicht gefunden!"), ), if(oPanel:index == 4, htmlAnzeige(, oDlg), ))}
es grüßt euch

Werner
Benutzeravatar
Werner_Bayern
Programmier-Gott
Programmier-Gott
 
Beiträge: 1207
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern

Re: Toolbar / Statusbar "activate"

Beitragvon AUGE_OHR » Di, 20. Jan 2015 23:54

hi,
Werner_Bayern hat geschrieben:
Code: Alles auswählen
oStatusbar:panelClick := {|oPanel| if(oPanel:index == 3, if(.not. startedatei("calc.exe"),;
   fehler("Taschenrechner nicht gefunden!"), ), if(oPanel:index == 4, htmlAnzeige(, oDlg), ))}
das ist genau das was ich meine ! es wird, über den Index, eine "feste" Reihenfolge vorgelegt.

wenn ich nun einen Panel löschen / neu hinzufüge stimmt das ganz ja nicht mehr :banghead:

deshalb spreche ich ja auch von einem separaten "activate" Codeblock Slot den ich dem jeweiligen Panel zuordnen kann.
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
 
Beiträge: 10063
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: Toolbar / Statusbar "activate"

Beitragvon Werner_Bayern » Mi, 21. Jan 2015 0:12

Dann benutze halt den :key anstatt :index.
es grüßt euch

Werner
Benutzeravatar
Werner_Bayern
Programmier-Gott
Programmier-Gott
 
Beiträge: 1207
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern

Re: Toolbar / Statusbar "activate"

Beitragvon AUGE_OHR » Mi, 21. Jan 2015 2:09

Werner_Bayern hat geschrieben:Dann benutze halt den :key anstatt :index.
es geht doch nicht darum "wie" ich es identifiziere sondern um die Belegung von "einem" Codeblock durch o:panelClick.

ideal wäre doch diese Syntax
Code: Alles auswählen
oStatusbar:panelClick := {|oPanel| EVAL(oPanal:activate) }
d.h. jedes Panel Item sollte einen activeate Codeblock Slot haben den man EVALuieren kann.
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
 
Beiträge: 10063
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: Toolbar / Statusbar "activate"

Beitragvon Herbert » Mi, 21. Jan 2015 7:49

Jimmy, du hast recht. Die Toolbar ist in der gegebenen Form nicht mehr zeitgemäss. Man sollt sie z.B auch vom Fenster loslösen können.
Bei mir ist das daher sehr klassisch codiert:

Code: Alles auswählen
oToolBar:addItem(, ID_BTN_DET_BMP,,,,, "ETOOL_OKD"):tooltiptext := "Detailseite speichern"
...
oToolBar:buttonClick := {|oButton| ::EToolbEvent( oButton )}

METHOD AdressF:EToolbEvent( oButton )
LOCAL cKey:=oButton:key
DO CASE
CASE cKey == "ETOOL_OK"
...
Grüsse Herbert
Immer in Bewegung...
Benutzeravatar
Herbert
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 1756
Registriert: Mi, 13. Aug 2008 23:22
Wohnort: Gmunden am Traunsee, Österreich

Re: Toolbar / Statusbar "activate"

Beitragvon AUGE_OHR » Mi, 21. Jan 2015 11:53

Herbert hat geschrieben:Die Toolbar ist in der gegebenen Form nicht mehr zeitgemäss.
Man sollt sie z.B auch vom Fenster loslösen können.
so wie in Office oder den meisten Browser ... das nennt man Rebar welches einen "Container" bereitstellt.
https://msdn.microsoft.com/en-us/library/windows/desktop/bb774375%28v=vs.85%29.aspx
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
 
Beiträge: 10063
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: Toolbar / Statusbar "activate"

Beitragvon Werner_Bayern » Mi, 21. Jan 2015 13:37

Servus Jimmy,

was hindert Dich daran, den Codeblock als Text in :key oder :cargo reinzuschreiben und diesen dann makrozuexpandieren?
es grüßt euch

Werner
Benutzeravatar
Werner_Bayern
Programmier-Gott
Programmier-Gott
 
Beiträge: 1207
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern

Re: Toolbar / Statusbar "activate"

Beitragvon AUGE_OHR » Mi, 21. Jan 2015 23:58

Werner_Bayern hat geschrieben:was hindert Dich daran, den Codeblock als Text in :key oder :cargo reinzuschreiben und diesen dann makrozuexpandieren?
hm ... in den o:key Slot würde ich keinen Codeblock legen aber in den o:Cargo Slot ... das könnte man es machen.

es ging mir bei den beide activeX darum das Windows zwar kein Codeblock kennt aber es für Xbase++ doch "sinnvoll" wäre wenn man einen o:Activate Slot für einen Codeblock hätte.
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
 
Beiträge: 10063
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg


Zurück zu ActiveX

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast