Показано с 1 по 8 из 8

Тема: Скрипты (используемые методы).

  1. #1

    По умолчанию Скрипты (используемые методы).

    Добрый день, подскажите, я же правильно понимаю что все используемые в вашем примере методы и классы это переопределенные (c добавлением частично вашего индекса) NET.Framework ?
    Возможно ли дать ссылки на оригинал ?
    Например: TreeItemHlp

    Пространство имен:
    System.Windows.Automation
    Assembly:
    UIAutomationTypes.dll
    Определяет узел в элементе управления TreeItem.


    Пример
    public override void Execute()
    {
    Аппарат1=Аппарат2=Аппарат3=Аппарат4=false; //сбрасываем все выходы
    foreach (IDocumentHlp document in HostFB.TreeItemHlp.Project.Documents) //
    IAttributeHlp attribute = document.Attribute;
    if (attribute.Opened) //проверяем загружено ли окно
    {
    var mnemoInfo = attribute.CurrentCallInfo;
    var callType = mnemoInfo.CurrentCallType;
    //проверяем что окно открыто и оно имеет тип "документ"
    if (attribute.DocumentInfo.Handle != 0 && callType == MasterSCADA.Interfaces.ECallType.ctDocument )
    {
    //взводим определенный выход в зависимости от имени объекта у которого открыто окно
    if (attribute.TreeItem.Name=="Аппарат1") Аппарат1=true;
    if (attribute.TreeItem.Name=="Аппарат2") Аппарат2=true;
    if (attribute.TreeItem.Name=="Аппарат3") Аппарат3=true;
    if (attribute.TreeItem.Name=="Аппарат4") Аппарат4=true;
    }
    }
    }

  2. #2

    По умолчанию

    Подскажите, почему не работает код

    Пример
    public override void Execute()
    {
    foreach (IDocumentHlp document in HostFB.TreeItemHlp.Project.Documents) //
    IAttributeHlp attribute = document.Attribute;
    if (attribute.Opened) //проверяем загружено ли окно
    {

    //взводим определенный выход в зависимости от имени объекта у которого открыто окно
    if (attribute.TreeItem.Name=="Тулбар") Lamp=true;

    }
    }

    Компилируется нормально, без строчки if (attribute.TreeItem.Name=="Тулбар") Lamp=true; лампа горит.

  3. #3

    По умолчанию

    Цитата Сообщение от shamilnizaev@mail.ru Посмотреть сообщение
    Добрый день, подскажите, я же правильно понимаю что все используемые в вашем примере методы и классы это переопределенные (c добавлением частично вашего индекса) NET.Framework ?
    Конечно же нет.
    Это наши библиотеки, никакой Net Framework мы не переопределяем.
    Спасибо.

  4. #4

    По умолчанию

    Цитата Сообщение от shamilnizaev@mail.ru Посмотреть сообщение
    Подскажите, почему не работает код
    Какую ошибку выдает при компиляции?
    Спасибо.

  5. #5

    По умолчанию

    Цитата Сообщение от SCADAMaster Посмотреть сообщение
    Какую ошибку выдает при компиляции?
    1. А где возможно прочитать про Ваши библиотеки , если это конечно открытая и доступная информация.
    2. Ошибку не выдает, компилируется нормально.
    3. Сейчас пытаюсь запустить следующий код. При открытии одного окна (mnemo_TB), автоматический запускается другое(mnemo).
    Изображения Изображения

  6. #6

    По умолчанию

    Цитата Сообщение от shamilnizaev@mail.ru Посмотреть сообщение
    1. А где возможно прочитать про Ваши библиотеки , если это конечно открытая и доступная информация.
    2. Ошибку не выдает, компилируется нормально.
    3. Сейчас пытаюсь запустить следующий код. При открытии одного окна (mnemo_TB), автоматический запускается другое(mnemo).
    -1- Всё что есть это автогенерируемая справка "Объектная модель MasterSCADA" (в папке с установленной скадой, "бъектная_модель.chm")
    Так же можно посмотреть "https://insat.ru/blog/?category=9" где конкретные примеры
    -2- Значит проверяйте какие имена возвращает "attribute.TreeItem.Name". Ибо видно что совпадения нет раз не отрабатывает
    -3- Зачем через скрипт если есть "Управление документом" который позволяет отслеживать как факт открытия окна, так и открыть окно.
    Спасибо.

  7. #7

    По умолчанию

    Цитата Сообщение от SCADAMaster Посмотреть сообщение
    -1- Всё что есть это автогенерируемая справка "Объектная модель MasterSCADA" (в папке с установленной скадой, "бъектная_модель.chm")
    Так же можно посмотреть "https://insat.ru/blog/?category=9" где конкретные примеры
    -2- Значит проверяйте какие имена возвращает "attribute.TreeItem.Name". Ибо видно что совпадения нет раз не отрабатывает
    -3- Зачем через скрипт если есть "Управление документом" который позволяет отслеживать как факт открытия окна, так и открыть окно.
    Эти функции нужны, что бы создать всплывающее окно с помощью одной кнопки (с фиксацией). Если нажата (окно октрыто), если отжата (окно закрыто). ФБ "Управление документом" имеет всего один вход (открыть) и один выход "Закрыть".

    Подскажите:
    1. Возможно ли скриптом ОТЖАТЬ кнопку ?
    2. А какие типы данных у атрибутов attribute.TreeItem.Name" ? (строка ?), компилятор выдает ошибку (неявное преобразование данных).

  8. #8

    По умолчанию

    Цитата Сообщение от shamilnizaev@mail.ru Посмотреть сообщение
    Эти функции нужны, что бы создать всплывающее окно с помощью одной кнопки (с фиксацией). Если нажата (окно октрыто), если отжата (окно закрыто). ФБ "Управление документом" имеет всего один вход (открыть) и один выход "Закрыть".
    Так что именно мешает?
    Создаете Расчет у него формула вида "НЕ имяВашейКоманды"
    Когда команда истина, расчет выдает ложь и наоборот. Одну на открыть, вторую на закрыть.

    ------
    Цитата Сообщение от shamilnizaev@mail.ru Посмотреть сообщение
    1. Возможно ли скриптом ОТЖАТЬ кнопку ?
    Нет. Визуальная часть кнопки просто отображает то, что сейчас есть в дереве объектов у команды.
    Так что если надо, то нужно менять значение самой команды, отвечающей за кнопку.

    Цитата Сообщение от shamilnizaev@mail.ru Посмотреть сообщение
    2. А какие типы данных у атрибутов attribute.TreeItem.Name" ? (строка ?), компилятор выдает ошибку (неявное преобразование данных).
    Строка
    Спасибо.

Похожие темы

  1. Шрифты используемые в OWEN Logic
    от Oleg_15 в разделе Среда программирования OWEN Logic
    Ответов: 7
    Последнее сообщение: 08.08.2018, 21:04
  2. Ответов: 0
    Последнее сообщение: 15.02.2018, 09:30
  3. Работа с архивами MSSQL через скрипты С#
    от z-renat в разделе Master SCADA 3
    Ответов: 0
    Последнее сообщение: 05.04.2017, 14:17
  4. Скрипты
    от Pimpl в разделе Master SCADA 3
    Ответов: 1
    Последнее сообщение: 19.02.2016, 11:56
  5. Скрипты и объектная модель MasterScada
    от anfaenger в разделе Master SCADA 3
    Ответов: 4
    Последнее сообщение: 29.10.2013, 14:50

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •