[gelöst] Balkenanzeige zentrieren aber wie?

Begonnen von Noname, 12 Juli 2014, 09:05:04

Vorheriges Thema - Nächstes Thema

Noname

Hallo,

ich habe für eine Füllstandsanzeige eine Balkenanzeige
realisiert.

Der Balken wird in fhem leider linksbündig angezeigt,
warum wird der Balken nicht Zentriert?

siehe jpg im Anhang

fhem.cfg

define RE_Level dummy
attr RE_Level devStateIcon {Balken("RE_Level",1000,8,50,"FFFFFF","4B9C8A")}
attr RE_Level fp_01_Wohnen 58,210,0,
attr RE_Level room Terasse


99_MyUtils.pm

# Balkenanzeige
sub Balken($$$$$$) {
my ($name, $max, $width, $height, $color1, $color2) = @_;
my $p=int(ReadingsVal("$name","state",0)/($max/$height));
return '<div align="bottom" style="width:'.$width.'px;height:'.($height-$p).'px;background-color:#'.$color1.'"></div><div align="bottom" style="width:'.$width.'px;height:'.$p.'px;background-color:#'.$color2.';"></div>'
}

Wer kann mir weiterhelfen,
Vielen Dank

fiedel

#1



Hi,

probiere es mal so:


# Balkenanzeige
sub Balken($$$$$$) {
my ($name, $max, $width, $height, $color1, $color2) = @_;
my $p=int(ReadingsVal("$name","state",0)/($max/$height));
return '<div align="bottom" style="width:'.$width.'px;height:'.($height-$p).'px;margin-left:30px;background-color:#'.$color1.'"></div><div align="bottom" style="width:'.$width.'px;height:'.$p.'px;margin-left:30px;background-color:#'.$color2.';"></div>'
}



Mit dem Wert von "margin-left:" schiebst du die Darstellung weiter nach rechts und bekommst so eine Zentrierung hin.
Es ist ja kein normales Icon sondern eine "Web- Grafik" und wird somit von FHEMWEB nicht so behandelt, wie Icons.


Edit: Ich sehe gerade dass ich das mal von dir abgekupfert hatte und du den Balken mit den Variablen noch optimiert hast. Dann baust du dir den margin am Besten auch per Var. ein.


Gruß

Frank
FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423

justme1968

probier mal noch ein div mit align="centrer" drum.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Noname

#3
Hallo,

@fiedel
im Prinzip geht's, allerdings verschiebt sich dann auch die Darstellung im Floorplan,
weiterhin ist die Darstellung zwischen verschiedenen Bildschirmauflösungen verschieden.

@justme1968
das wars, so funktioniert alles.

vielen Dank für eure schnelle Hilfe.

# Balkenanzeige
sub Balken($$$$$$) {
my ($name, $max, $width, $height, $color1, $color2) = @_;
my $p=int(ReadingsVal("$name","state",0)/($max/$height));
return '<div align="center"><div align="bottom" style="width:'.$width.'px;height:'.($height-$p).'px;background-color:#'.$color1.'"></div><div align="bottom" style="width:'.$width.'px;height:'.$p.'px;background-color:#'.$color2.';"></div></div>'
}

Puschel74

Hallo,

Zitatdas wars, so funktioniert alles.

vielen Dank für eure schnelle Hilfe.
Bitte dem Beitragstitel noch ein (Gelöst) vorne dran und die Lösung auch posten.
Danke.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.