plcforum.uz.ua

International PLC Forum
It is currently Wed Apr 25, 2018 11:30 pm

All times are UTC + 3 hours


Forum rules


Please click here to view the forum rules



Post new topic Reply to topic  [ 2 posts ] 
Author Message
PostPosted: Sun Apr 14, 2013 10:51 am 

Joined: Mon Sep 27, 2010 10:17 pm
Posts: 59
Где можно найти описание С++ скриптов типа «PCS7_****» и описание всех возможных параметров, которые используются при вызове таких функций/процедур с конструкцией (char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName) ?

Или поясните, пожалуйста, следующее. Ничего нигде не смог найти, что меня бы убедило.

1. По левому клику мыши на иконке блока мотора вызывается скрипт, открывающий соответствующий фейсплейт :

Code:
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
PCS7_OpenGroupDisplay_V6(lpszPictureName, lpszObjectName );
}

1.1 Зачем в параметрах продецуры OnClick указано lpszPropertyName, ведь далее вызывается другая процедура PCS7_OpenGroupDisplay, в которой параметр lpszPropertyName не используется.
1.2 При использовании конструкции (char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName) что конкретно передаётся в ячейку памяти с именем lpszPropertyName. Как я понимаю, туда записываются строка символов, содержащая имя какого-то свойства. А какого именно свойства ? Ведь графический объект может содержать не одно, а множество свойств.

2. Также есть ещё один скрипт с процедурой OnClick, который срабатывает по событию Button_Off.Mouse action :

Code:
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)   
{
PCS7_OpenInputBoxBin_V6(lpszPictureName,lpszObjectName,2);


Цифра «2» - я так понимаю,что это численное значение (или индекс ???) какого-то свойства. Какого именно и почему 2, а не 1, не 3 ?


3. Какие конкретно значения переменных «nFlags» , «x» и «у» будут использованы в параметрах процедуры void и как ими воспользуется (если воспользуется) процедура PCS7_OpenGroupDisplay_I_V6 :

Code:
#include "apdefap.h"
void OnRButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y)
{
PCS7_OpenGroupDisplay_I_V6(lpszPictureName, lpszObjectName,"ILOCK" );
}


Почему, при вызове PCS7_OpenGroupDisplay_I_V6 , ей указывается имя "ILOCK" объекта (или это имя свойства ? ) , а в п.1 , при вызове PCS7_OpenGroupDisplay_V6 – ничего, аналогичного «ILOCK», не указывается. Ведь в обоих случаях происходит, в конечном счёте, открытие фейсплейтов.


4. Для функционирования кнопки «Manual» выбора режима управления используются скрипт, который срабатывает по Change свойства Display_Variable этой кнопки :

Code:
#include "apdefap.h"
void OnPropertyChanged(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName,  double  value)
{
PCS7_OpenInputBoxBin_V6(lpszPictureName,lpszObjectName,1);


- Какое именно свойство должно измениться, чтобы сработал этот скрипт ?
- Что такое «double value» ? Это значение (или индекс) свойства ? Какого именно ? И зачем понадобилось использовать для этого аж 8 байт ?


Top
 Profile  
 
PostPosted: Sun May 26, 2013 11:48 am 

Joined: Mon Jan 09, 2012 9:58 am
Posts: 4
Location: Беларусь
Привет!
Не так давно начал разбирать и изучать PCS7 по частям, так сказать. Поэтому поделюсь.
1. OnClick имеет в описании три параметра, которые являются указателями. А указатель в С/С++ может иметь значение NULL, т.е. никуда не указывать. По событию система вызывает функцию OnClick и передает в параметрах информацию об объекте. Этими указателями можно пользоваться в теле функции, а можно и не пользоваться.

2. Нужно смотреть функцию PCS7_OpenInputBoxBin_V6().
3. nFlags насколько я знаю, это информация о нажатых клавишах (Shift, Ctrl и т.д.).
4. Смотри функцию PCS7_OpenInputBoxBin_V6().


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 2 posts ] 

All times are UTC + 3 hours


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
Powered by International PLCforum® Forum Software © PLCforum
Mobile version