[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

From |
Tim Hofer <thofer@umich.edu> |

To |
statalist@hsphsun2.harvard.edu |

Subject |
Re: st: Re: Re: dialog programming |

Date |
Fri, 05 Dec 2003 12:36:20 -0500 |

I'm not sure if this is what you want but check out this thread

http://www.stata.com/statalist/archive/2003-03/msg00070.html

using that as a model I wrote a dialog box/ program where values of spinners

SPINNER sp_q1_r1 @ spyincr splen ., ///

label("Spinner one") ///

min(0) max(1000) default(30) ///

onchange("program spq1_chg")

....

if changed, call a program at the bottom of the dialog file

PROGRAM spq1_chg

BEGIN

put "prspin 1 " main.sp_q1_r1 " " main.sp_q1_r2 " " main.sp_q1_r3 " " ///

" " main.sp_q1_r4 " " main.sp_q1_r5 " " main.sp_q1_r6 " "

stata

END

which then builds a command line and invoke stata to run an ado file called - prspin.ado

the ado file does some calculations and then returns a value into 1 of the six spinners

with this statement

.prevrev_dlg.main.sp_q1_r6.setvalue "`val'"

(using the class system to set a label or value in this case)

a pretty specific operation but it might be generalizable to what you are interested in.

Steichen wrote:

James Hassell (one of the StataCorp dialog gurus) replied:

Sophie originally wrote:enters 4

I am currently working on a dialog program which is meant to have a

different dialog depending on the number of groups entered in the first

window. I.e. if the use enters 2 groups in the main window, then he will

find two boxes to enter a value in on the options window, and if he

programgroups initially, then he will find 4 boxes etc. is there a way to

youthis?And Thomas Steichen followed up with:

If you have a small set of possible groups sizes, small enough so that

becan choose among them with a radio control, then what you want to do can

capturedone easily. But, I am fairly certain there is not an _easy_ way to

James,the numeric value of a control and use it to modify the appearance of aThomas is exactly right. There is not a method built into the Stata

dialog window.

dialog language for passing information between two dialog windows.

Thomas also suggested letting the user specify the desired number of

groups with RADIO buttons. This is a good solution which could possibly

be enhanced by using a COMBOBOX or LISTBOX. The general idea is to force

the user to specify how many groups are expected. With this information,

the event handlers for that control, can show and hide additional EDIT

boxes or other controls located on the same tab or even other tabs.

However, they cannot control other dialog box windows.

Sophie did contact Stata technical support and has been provided with

the information above. I thought others might be interested, so I decided

to post a follow up here.

You left out the other part of my answer... where I suspected that it might

be doable "by

invoking an .ado and/or by using some of the non-public features of the

dialog language."

So, I'll ask directly: Is it possible to capture the numeric value of one

control then use it to manipulate the event handlers for other controls?

Tom

*

* For searches and help try:

* http://www.stata.com/support/faqs/res/findit.html

* http://www.stata.com/support/statalist/faq

* http://www.ats.ucla.edu/stat/stata/

* * For searches and help try: * http://www.stata.com/support/faqs/res/findit.html * http://www.stata.com/support/statalist/faq * http://www.ats.ucla.edu/stat/stata/

**References**:**st: Re: dialog programming***From:*jhassell@stata.com (James Hassell)

**st: Re: Re: dialog programming***From:*"Steichen" <steichen@triad.rr.com>

- Prev by Date:
**Re: st: PSEUDO R2** - Next by Date:
**st: small problem with povdeco** - Previous by thread:
**st: Re: Re: dialog programming** - Next by thread:
**st: Re: Bug report: Stata crashes when inserting dataset with missing data via ODBC.** - Index(es):

© Copyright 1996–2017 StataCorp LLC | Terms of use | Privacy | Contact us | What's new | Site index |