fragen zum DEFINE POPUP

15/01/2009 - 19:40 von mike_ao | Report spam
hi füxe

mal zwei fragen zum DEFINE POPUP

1) wie kann ich z.b. das popup so definieren, dass wenn das ding nicht
in mein fenster reinpasst (zu lange) sich über den fensterrand
(desktop) ausweitet? (SCROLL sieht ein bißchen doof aus, hat nur einen
vertikal halben scrollbalken)

2) ein POPUP kaskadieren. àhnlich wie im explorer bei rechtklick auf
eine datei mit "senden an"

das popup wird dynamisch erstellt

wenn ich auf einen (Adressen)-Datensatz im Grid rechts klicke, dann
werden die, zu dieser adresse passenden auswahlparameter erstellt
z.b:

||
| 1 Fax senden >|
| 2 Anrufen >|
| 3 E-mail >|
||
| Bearbeiten |
||
| Eigenschaft |
||

nun habe ich aber unter der adresse verschiedene Empfànger, die je nach
deren eigenschaften (hat fax, kein e-mail usw.) beim anklicken einer
der positionen (1-3) rechts(links) von dem popup als submenü gePOPT
werden sollen.

unter 1 kommt
"Buchhaltung"
"Verkauf "
"Werkstatt "

unter 2 kommt
"Buchhaltung "
"Verkauf "
"Werkstatt "
"Fr. Müller [Sekret.] "
"Hr. Maier [Lager] "

unter 3 kommt
"Buchhaltung"
"Verkauf "
"Fr. Müller "
"Hr. Maier "
 

Lesen sie die antworten

#1 Matthias Kahlert
16/01/2009 - 00:00 | Warnen spam
mike_ao schrieb:
2) ein POPUP kaskadieren. àhnlich wie im explorer bei rechtklick auf
eine datei mit "senden an"

das popup wird dynamisch erstellt

wenn ich auf einen (Adressen)-Datensatz im Grid rechts klicke, dann
werden die, zu dieser adresse passenden auswahlparameter erstellt

nun habe ich aber unter der adresse verschiedene Empfànger, die je nach
deren eigenschaften (hat fax, kein e-mail usw.) beim anklicken einer
der positionen (1-3) rechts(links) von dem popup als submenü gePOPT
werden sollen.



Und wo ist hier das Problem? Das Popup kannst Du doch dynamisch
erstellen... machst Du doch schon, schreibst Du...

DEFINE POPUP mnuTest MARGIN RELATIVE
lnI = 1
SELECT tabelle
SCAN
IF !EMPTY(tabelle.fax) THEN
DEFINE BAR lnI OF mnuTest PROMPT ALLTRIM(tabelle.name)
ON SELECTION BAR lnI OF mnuTest DO ...
lnI = lnI + 1
ENDIF
ENDSCAN

Vielleicht als Hinweis:

Die Nummern im DEFINE BAR ... dürfen auch Lücken enthalten, falls es das
für dich vereinfacht... ich mache meine Menüs etwa immer in 10er
Schritten, wenn ich diese per PRG erstelle, dann ist ein nachtràgliches
Einfügen eines Menüpunkts einfacher ;-)
Du kannst also bei der Defition einfach einzelne Punkte per IF...ENDIF
auslassen. Die Lücke in der Numerierung stört nicht.

Alternativ könntest Du die nicht erlaubten Menüpunkte mit der
SKIP-Klausel einfach disablen. Dann wird zwar der Name angezeigt, ist
aber nicht auswàhlbar.

Wenn es Dir drum geht, wie Du ein Popup innerhalb eines Popups
definierst, als kleiner Tip: Erstell Dir einfach ein Popup mit dem
Menü-Designer von VFP, und schau Dir dann das Ergebnis an, also die
daraus erzeugte MPR-Datei. Diese einfach wie ein PRG öffnen...

DEFINE POPUP mnuPop1 SHORTCUT RELATIVE FROM MROW(),MCOL()
DEFINE BAR 1 OF mnuPop1 PROMPT "Menü"
ON BAR 1 OF mnuPop1 ACTIVATE POPUP mnuPop2

DEFINE POPUP mnuPop2 SHORTCUT RELATIVE
DEFINE BAR 1 OF mnuPop2 PROMPT "Submenü..."
ON SELECTION BAR 1 OF mnuPop2 DO ...

Matthias Kahlert
[MaxPro] Software
http://www.max-pro.de

Ähnliche fragen