[gelöst] Rechnen mit float werten in widget

GUI Relevanten, PaperUI, BasicUI, HabPanel ...

Moderatoren: seppy, udo1toni

Antworten
franzda
Beiträge: 26
Registriert: 9. Jun 2019 21:12

[gelöst] Rechnen mit float werten in widget

Beitrag von franzda »

Hallo
Ich habe bereits mehrere Widgets erstellt. Ist wirklich eine gute Möglichkeit openhab anzupassen/ zu erweitern.
Ich möchte nun, wenn ich eine Taste drücke, eine Addition/Subtraktion durchführen und den Wert in ein Item abspeichern.

Grundsätzlich geht das sehr gut, jedoch habe ich (noch) keine Dokumentation gefunden wie ich float Operation durchführen kann. Diese Lösung liefert eine Fehlermeldung.
Die Frage ist wie berechne ich den Wert Neuwert !
An liebsten wäre mir eine Quelle für Doku damit ich mich gründlich entwickeln kann.

DANKE

Code: Alles auswählen

<div ng-if="itemValue('Minus') =='OFF'">
 <button2 class="btn btn-lg" style="background: green; color: white"
  var float Neuwert = Grenze_Diesel + 0.01
  ng-click="sendCmd('Grenze_Diesel', itemValue('Neuwert'))">
  It's off! Switch on
 </button2>
</div>
Zuletzt geändert von franzda am 3. Okt 2020 23:03, insgesamt 1-mal geändert.

franzda
Beiträge: 26
Registriert: 9. Jun 2019 21:12

Re: Rechnen mit float werten in widget

Beitrag von franzda »

Ich habe nun folgende Lösung erstellt und getestet:

Code: Alles auswählen

<h5  style="color:rgb(43, 189, 226)">Grenze E10 </h5>
<div style="color:greenyellow">Istwert: {{'%.03f' | sprintf:itemValue('Grenze_E10')}}</div>
<div oc-lazy-load="['/static/myangularPlus.js']">
    <div1 ng-init = "clkcount =  itemValue('Grenze_E10')"</div1>   
    <div ng-controller="ngclickCtrlPlus">
        <input style="background:cadetblue" type="button" style="cursor:pointer" value="Plus" ng-click ="getdetails()"/>
        <input style="background:cadetblue" "color:Red" type="button" style="cursor:pointer" value="setzen" ng-click ="sendCmd('Grenze_E10',clkcount)"/> <br></br>   
      	<span style="color:greenyellow">Sollwert: {{'%.03f' | sprintf:clkcount}}</span>
    </div> 
 </div>
sowie java Scipt

Code: Alles auswählen

(function() {

  'use strict';
  angular
  .module('app', [])
  .controller('ngclickCtrlPlus', ['$scope', function($scope) {  
    $scope.clkcount = parseFloat($scope.clkcount)
	$scope.getdetails = function (clkcount) {  
    $scope.clkcount = $scope.clkcount + parseFloat('0.01'); 
  }}]); 
})
();

Antworten