|
DVButton and DVButtonArray Q The buttons that I create in my VB
application are only enabled when the machine is inactive. When it
is executing they are grayed out. How can I have a button that
stays enabled whilst the machine is executing.
A. You use the DVButton function SetStatus. Also
look at the documentation on DMMachine m_Status member variable.
The SetStatus function allows you to define when the button is
enabled and when it is disabled. There is a small sample within
VBProjectB. For example, to have a button enabled whilst the
machine is executing call SetStatus on the appropriate button as
follows.
UpperButtons.m_DVButton(1).SetStatus DS_MACHINE_EXECUTE, 0, "My
Label"
Q Can I set a font on a button. A. You can set the font on a
button or all buttons within a button array. See
DVButton::SetButtonFont to set font on an individual button or
DVButtonArray.SetButtonFont to set font on all buttons within the
array. DGDataSet Q How can I programmatically reposition a
complete drawing once it has been loaded and is visible on screen.
A You do this by applying the DGDataSet::Rescale function. This
takes as an argument a SDGOrigin data structure that has been
initialised with the new offsets that are required. (Note that
this function can also be used to rescale or rotate the geometry).
First the origin structure has to be initialised, the offsets
applied, and then extended before calling the rescale function.
See the program listing below.
Dim origin As DGOrigin
Set origin as New DGOrigin
origin.m_Offset(DG_YY) = 200
origin.Extend
machine.m_DMProfile.m_DGDataSet.Rescale origin
Note that the DGOrigin object will self destruct when it
goes out of scope. DMAxis Q How can I disable the set Zero button in the standard Jog To
dialog. A. This is a question about axis capabilities or style.
When the axis is created it is given attributes that define its
capabilities. If using a 'stock' machine configuration, it might
for example, be required to disable axis homing. Or, as in this
example, the ability to 'zero' an axis is to be disabled. To do
this, you use the function DMAxis.SetAxisStyle. For example, to
disable the Y axis, use the following code once the machine has
been created. machine.m_DMAxis(DG_YY).SetAxisStyle
DM_AXIS_NOZERO, DM_AXIS_NOZERO |