Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 20

Thema: WINCC V6.2 Bit setzen/rücksetzen

  1. #1
    Registriert seit
    09.08.2005
    Beiträge
    11
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    nach langer Zeit habe ich mal wieder eine Frage an die Spezialisten!

    Gibt denn eigentlich keine Möglichkeit, ein Bit bei Drücken einer F-Taste zu setzten und nach loslassen wieder rückzusetzen?
    Ich möchte allerdings nicht, dass ich vorher ein Button fokussiere!
    Im Grunde soll der Bediener immer das Bit über die F-Taste setzen können, unabhängig im welchen Bild er sich gerade befindet...

    Vielen dank im voraus und beste Grüße

    Christian
    Zitieren Zitieren WINCC V6.2 Bit setzen/rücksetzen  

  2. #2
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    Das geht, zumindest mit Bits aus Byte-Word-DWord-Variablen.

    Am besten, du fügste einen Button ein und nimmst dann den Dynamik-Wizzard "Bit setzen/rücksetzen" in "Standard-Dynamiken".

    Für Setzen von Bit 0 bei drücken der linken Maustaste wird dann z.Bsp. folgender Code generiert:

    Code:
    #include "apdefap.h"
    void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y)
    {
     // WINCC:TAGNAME_SECTION_START
    // syntax: #define TagNameInAction "DMTagName"
    // next TagID : 1
    #define TAG_0 "wTest"
    // WINCC:TAGNAME_SECTION_END
    
    // WINCC:PICNAME_SECTION_START
    // syntax: #define PicNameInAction "PictureName"
    // next PicID : 1
    // WINCC:PICNAME_SECTION_END
    
    DWORD dwHelp1,dwHelp2;
    
    dwHelp1=GetTagDWordWait(TAG_0);
    dwHelp2=dwHelp1|1;
    SetTagDWordWait(TAG_0,dwHelp2);
    
    }

    zum Rücksetzen bei loslassen der linken Maustaste:

    Code:
    #include "apdefap.h"
    void OnLButtonUp(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y)
    {
     // WINCC:TAGNAME_SECTION_START
    // syntax: #define TagNameInAction "DMTagName"
    // next TagID : 1
    #define TAG_0 "wTest"
    // WINCC:TAGNAME_SECTION_END
    
    // WINCC:PICNAME_SECTION_START
    // syntax: #define PicNameInAction "PictureName"
    // next PicID : 1
    // WINCC:PICNAME_SECTION_END
    
    DWORD dwHelp1,dwHelp2;
    
    dwHelp1=GetTagDWordWait(TAG_0);
    dwHelp2=dwHelp1&(0xFFFFFFFF^1);
    SetTagDWordWait(TAG_0, dwHelp2);
    
    }
    Wenn du das allgemeingültig haben willst, mußt du den Inhalt der Scripte das in Scripte einfügen und diese dann bei jedem Button einhängen. Was meinst du mit "ohne Fokussieren"? Kann man nicht Shortcuts vergeben, im Notfall über Toolbars oder Menüs? Oder hat du das wirklich für ALLE Buttons vor? Bei jedem beliebigen Button automatisch, das wird so einfach dann nicht gehen wenn überhaupt.
    Geändert von Ralle (07.06.2008 um 15:22 Uhr)
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  3. #3
    HarbichC ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    09.08.2005
    Beiträge
    11
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo Ralle,

    vieleicht habe ich mich nicht richtig ausgedückt;
    Es geht mir darum, mittels der Tastatur und einer Funktionstaste ein Bit zu setzen bzw. rückzusetzen, unabhängig in welchen WinCC Bild sich der Bediener befindet, einfach gesagt F1 Taste drücken Bit setzen -> losslassen Bit rücksetzen.
    Ich habe es bis jetzt mit den Attribut "Tastatur drücken/losslassen" und dann per Skript eine Abfrage der gedrückten Taste gemacht, das geht aber nur dann, wenn das dementsprechende Objekt fokussiert ist.

    Grüsse,

    Christian
    Zitieren Zitieren WINCC V6.2 Bit setzen/rücksetzen  

  4. #4
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    Ja, da hatte ich bei meiner Antwort schon befürchtet, daß ich am Thema vorbeischramme .

    Du kannst einen Button einfügen und diesem eine Funktionstaste als Horkey zuweisen (Rechtsclick auf den Button, dann "Konfigurationsdialog". Dann mußt du diesen Button auf jedem Blatt "verstecken", so könnte es evtl. zu machen sein.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  5. #5
    Registriert seit
    30.03.2005
    Beiträge
    2.096
    Danke
    0
    Erhielt 673 Danke für 541 Beiträge

    Standard

    Hier mal ein Lösungsvorschlag:

    Man verbindet ein Objekt über einen Hotkey mit einer F-Taste der Tastatur.

    Dann verbindet man das Ereignis Mausklick des Objektes mit einer VBS-Aktion.

    In der VBS-Aktion wird eine Bool-Variable getoggelt.

    Das so projektierte Objekt fügt man in jedes Bild oder ein eventuell vorhandenes Hintergrundbild ein.

    In der Runtime toggelt dann die Bool-Variable mit jeder Betätigung der F-Taste.

    Gruß Kai
    Angehängte Grafiken Angehängte Grafiken

  6. #6
    Registriert seit
    30.03.2005
    Beiträge
    2.096
    Danke
    0
    Erhielt 673 Danke für 541 Beiträge

    Standard

    Und noch ein paar Bilder aus der Runtime.

    Gruß Kai
    Angehängte Grafiken Angehängte Grafiken

  7. #7
    Registriert seit
    30.03.2005
    Beiträge
    2.096
    Danke
    0
    Erhielt 673 Danke für 541 Beiträge

    Standard

    Nachtrag:

    Man kann als Objekt nur einen Button mit einem Hotkey verbinden.

    Man muss hier also mit einen Button arbeiten.

    Gruß Kai

  8. #8
    HarbichC ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    09.08.2005
    Beiträge
    11
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Also ich muss schon sagen,

    ich bin schwer begeistert...
    Werde das morgen gleich mal ausprobieren, wenn ich in die Firma komme,
    bis dahin erstmal vielen Dank!!!
    Zitieren Zitieren WINCC V6.2 Bit setzen/rücksetzen  

  9. #9
    HarbichC ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    09.08.2005
    Beiträge
    11
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo Leute,

    jetzt hatte ich doch die Gelegenheit den Lösungsvorschlag von Kai auszuprobieren; funktioniert soweit auch ganz gut.

    Leider darf das Bit nur beim drücken der Funktionstataste gesetzt sein, nach losslassen muss es dann zurückgsetzt werden!

    Ist so ne Art Freigabetaste!
    Gibts da auch ne Chance?


    Grüsse Christian
    Zitieren Zitieren WinCC V6.2 Bit setzen rücksetzen  

  10. #10
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von HarbichC Beitrag anzeigen
    Hallo Leute,

    jetzt hatte ich doch die Gelegenheit den Lösungsvorschlag von Kai auszuprobieren; funktioniert soweit auch ganz gut.

    Leider darf das Bit nur beim drücken der Funktionstataste gesetzt sein, nach losslassen muss es dann zurückgsetzt werden!

    Ist so ne Art Freigabetaste!
    Gibts da auch ne Chance?


    Grüsse Christian
    Ich kann dir nicht ganz folgen.
    Du mußt dem Button ein Ereignis beim Drücken einer Tastaturtaste zuweisen (Wert setzen) und ein Ereignis beim Loslassen einer Tastaturtaste (Wert zurücksetzen). Wenn du dann die zugewiesene Funktionstaste betätigst, wird der Button betätigt, das Ereignis "Wert setzen" wird ausgelöst. Beim Loslassen der Funktiontaste wird das Ereignis "Wert zurücksetzen" ausgelöst. Grad getestet, geht so.

    PS: Mit Mausevents funktioniert das nicht, du mußt Tastaturevents benutzen!
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

Ähnliche Themen

  1. Bit in Word setzen bzw rücksetzen
    Von geit im Forum Simatic
    Antworten: 27
    Letzter Beitrag: 06.03.2013, 13:10
  2. Ausgang setzen und rücksetzen
    Von Andreas k im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 26.07.2010, 16:39
  3. Schütz mit Setzen Rücksetzen
    Von mitchih im Forum Elektronik
    Antworten: 14
    Letzter Beitrag: 15.03.2010, 16:07
  4. WinCC 6.0 Bit setzen/rücksetzen
    Von zwerg77 im Forum HMI
    Antworten: 6
    Letzter Beitrag: 07.12.2008, 22:48
  5. Bit setzen/rücksetzen bei Tastendruck
    Von tantrum13 im Forum HMI
    Antworten: 0
    Letzter Beitrag: 15.12.2006, 07:54

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •