• Not Answered

Creating a drop down menu in Operate Graphics

Hi,

Looking to create a drop down menu with selected parameters contained within it. These parameters can then be selected and set to a value of either 1 or 0 (enabled or disabled) for a set period of time. Basically looking to silence an alarm for x amount of time. The drop down menu is the issue. Trying to code one but not much success so far. Any ideas how can to manage this? Parameters could range from 3 to around 12.

Best regards,

Wilson

1 Reply

  • Does it have to be on the graphic, or can you use a VB form? If you can use a form, then you could use a ListBox control with MultiSelect set to "2 - fmMultiSelectExtended", and handle the selected parameters accordingly.

    If it has to be on a graphic, then I do not know of a dropdown control that can be used. The way that I have seen graphics with a variable number of items is to design the graphic with the maximum expected number of items (around 12 in your case, although you would need to decide on a maximum) and then hide the items that are not needed at runtime using animations or VB code. Lastly, depending on your level of programming, you could dynamically create objects at runtime and add event handlers for those objects to handle clicking on them, etc. Personally, I would avoid this last option due to the complexity of the programming and the difficulty in troubleshooting. I was once told that successful code is code that works and can be understood/maintained by someone else after you're no longer involved.

    You didn't ask this, but DeltaV allows alarms to be "shelved". This will suppress the alarm and keep it from alarming until the timeout expires. Refer to books online for more information, the title is "Suppressing alarms". It will require you to go to the "Advanced" tab in the Alarm Properties dialog box and set the "Alarm Shelving Timeout". I think by default this is set to 999 days. This is for each individual module level alarm and will require you to download the module when you are done.