欢迎光临散文网 会员登陆 & 注册

DXQ

2023-04-06 16:19 作者:呆木雪人  | 我要投稿

In this example, a button with text is generated. The button, here a CommandFeedback1WR1RD, is normally called via the class HDiagnosisWindow. For this to work as a standalone some data was given. It is for illustrative purposes only.


Example of calling this button:

new emosWS.CommandFeedback2WR2RD(
parent, jsonstructure,'Simulator_01.New_Layout_Elements', true, windows, ''
);

"parent" this is the element in which the button should be loaded "jasonstructure" is the data object needed for the button - roughly the table on the left "Simulator_01.New_Layout_Elements" this is PLC + Tag "true" it means the button is "writable" "windows" is usually the diagnosisWindow object, here only an object filled with needed data / functions

Text:

As can be seen on the left in the table generated from a JSON structure, "Text" - "Beispieltext". Next to the button on the right is "Open". How come?

The position "Text" is a default value for the text. To get a text in the currently language, the TextID is required. With the help of this TextID, the associated text is retrieved from the database. Only in the case that there is no entry in the database for the text ID, the position "Text" is displayed. The following function monitors the text for the language:

emosWS.sendAdviseText(
   this.diagnosisWindow.getTextPrefix() + this.data.TextID, "name", function (msg) {
                     if (msg.value !== "")  this.text.textContent = msg.value;
                   }.bind(this), this)


Tags:

The button on the right performs 2 actions: read and write. He reads his current state and onclick writes a new state. The reading / monitoring of the button performs the following function:

emosWS.advise(this.readTagRD1, function(){
       $('#' + this.ledID).
       addClass('onMode').
       removeClass('offMode').
       removeClass('switchmode');
       $('#' + this.ledID3).
       addClass('offMode').
       removeClass('onMode').
       removeClass('orange');
                   }, "", emosWS.tagType.IO)    

The example button is an IO button, ie on click a 0 is sent if the button is set to 1 or 1 if the button is set to 0.

The new Condition will be sent by  

 $('#' + self.ledID).on("click", function () {
                        $(this).addClass('switchmode');
                        if(!self.writeRight){
                             emosWS.poke(self.writeLeft, "0");
                        } else {
                             emosWS.poke(self.writeLeft, "-1");
                        }
                   });


DXQ的评论 (共 条)

分享到微博请遵守国家法律