Grid AddObject("spn", "SHAPE")

19/09/2007 - 12:52 von Matthias Suck | Report spam
Hallo NG,

ich bin am verzweifeln.

Ich möchte in einem Grid in einer Spalte eine kleine Ampelschaltung einbauen.
Wenn ein Wert in der Tabelle z.B
<= 0 ist soll ein roter Punkt angezeigt werden

= 0 ist soll ein gelber Punkt angezeigt werden


Ist der Wert größer 10% soll ein grüner Punkt angezeigt werden.

Ich habe es mit folgendem versucht

thisform.pageframe1.page3.SetAll("DynamicForeColor", ;
"IIF(warning <= 0, RGB(255,255,255) ;
, RGB(0,0,0))", "Column")

und auch

a15="column6"+'.AddObject("spn", "SHAPE")'
a16="column6"+'.CurrentControl'
a18="column6"+'.spn.Visible'
a19="column6"+'.Sparse'
a20="column6"+'.spn.BackColor'
a21="column6"+'.spn.width'
a22="column6"+'.spn.height'
a23="column6"+'.spn.curvature'
thisform.pageframe1.page1.container1.grid1.&a15
thisform.pageframe1.page1.container1.grid1.&a16="spn"
thisform.pageframe1.page1.container1.grid1.&a18=.t.
thisform.pageframe1.page1.container1.grid1.&a19=.f.
thisform.pageframe1.page1.container1.grid1.&a20= RGB(255,0,0)
thisform.pageframe1.page1.container1.grid1.&a21= 15
thisform.pageframe1.page1.container1.grid1.&a22= 15
thisform.pageframe1.page1.container1.grid1.&a23= 90
lcDynamicColor = "IIF(tci003.warning <= 0, RGB(255,0,0), RGB(255,255,255))"
Thisform.pageframe1.page1.container1.grid1.Column6.spn.BackColor =
EVALUATE(lcDynamicColor)

Kann mir einer von Euch dabei helfen?

Viele Grüße
Matthias Suck
 

Lesen sie die antworten

#1 Christian Wolff
19/09/2007 - 14:02 | Warnen spam
Hi Matthias,

wir haben das ganze als Statusanzeige so gelöst:

- Füge 3 SHAPES mit den unterschiedlichen Farben der Column hinzu
- Trage in der Column bei DynamicCurrentcontrol entweder eine eigene Methode
ein (diese gibt den Namen des anzuzeigenden Controls zurück) oder direkt mit
IIF: in deinem Beispiel: iif(warning<0,"ishape1",iif(warning>=0 and
warning<10,"ishape2","ishape3") wobei ishape1=roter Punkt, ishape2=gelber
Punkt und ishape3=grüner Punkt

mfg
Christian


"Matthias Suck" schrieb im
Newsbeitrag news:
Hallo NG,

ich bin am verzweifeln.

Ich möchte in einem Grid in einer Spalte eine kleine Ampelschaltung
einbauen.
Wenn ein Wert in der Tabelle z.B
<= 0 ist soll ein roter Punkt angezeigt werden
= 0 ist soll ein gelber Punkt angezeigt werden


Ist der Wert größer 10% soll ein grüner Punkt angezeigt werden.

Ich habe es mit folgendem versucht

thisform.pageframe1.page3.SetAll("DynamicForeColor", ;
"IIF(warning <= 0, RGB(255,255,255) ;
, RGB(0,0,0))", "Column")

und auch

a15="column6"+'.AddObject("spn", "SHAPE")'
a16="column6"+'.CurrentControl'
a18="column6"+'.spn.Visible'
a19="column6"+'.Sparse'
a20="column6"+'.spn.BackColor'
a21="column6"+'.spn.width'
a22="column6"+'.spn.height'
a23="column6"+'.spn.curvature'
thisform.pageframe1.page1.container1.grid1.&a15
thisform.pageframe1.page1.container1.grid1.&a16="spn"
thisform.pageframe1.page1.container1.grid1.&a18=.t.
thisform.pageframe1.page1.container1.grid1.&a19=.f.
thisform.pageframe1.page1.container1.grid1.&a20= RGB(255,0,0)
thisform.pageframe1.page1.container1.grid1.&a21= 15
thisform.pageframe1.page1.container1.grid1.&a22= 15
thisform.pageframe1.page1.container1.grid1.&a23= 90
lcDynamicColor = "IIF(tci003.warning <= 0, RGB(255,0,0),
RGB(255,255,255))"
Thisform.pageframe1.page1.container1.grid1.Column6.spn.BackColor > EVALUATE(lcDynamicColor)

Kann mir einer von Euch dabei helfen?

Viele Grüße
Matthias Suck

Ähnliche fragen