Author: john
Posted: 2017-01-13 at 10:01:26
Personally I don't use Class Designer or a .cdxml file. I find it very
easy to manually create the form. I guess I started doing because in
the beginning the Class Designer was not easy to work with - especially
try to add a new control or to move one.
So today I just move the control's code to the order I want and location
required by the task.
I too like the dGridSizer. I use it all the time and it has helped me
with spacing, sizing, and positions of the controls within a panel.
Today the only issue I have with Dabo is the fact that wxPython does not
have a stable version that supports python 3.x. Of course that's not
Dabo's fault.
To be honest I believe I will soon will be moving on to Electron (uses
html,css,JavaScript, Chrome, NodeJS to create the ui for a desktop app).
Johnf
On 01/13/2017 01:26 AM, Max Voß wrote:
> Hi Johnf, thanks for your reply.
>
> In my last message I completely messed up the indeces, so please it
> ignore it, it will only confuse you here is the correct version.
>
> Am Mittwoch, den 11.01.2017, 08:48 -0800 schrieb john:
>> How did you create the UI form? Did you use the class designer?
>>
>> Or did you manually create each of the controls - something like:
>>
>> dabo.ui.dTextBox(self, RegID="CaseID",Width=225, DataSource =
>> 'public.esenroll', DataField = 'caseno')
>>
> Well, I have chosen a third way. I manualy created a .cdxml-File
> (without the class designer, since my Form is huge and I don't like what
> it does to my .cdxml) that looks like this: (I stripped it down to the
> essentials for readability)
>
> ...
> <dGridSizer>
> <dTextBox rowColPos="(1, 1)" DataField="sph_r"></dTextBox>
> <dTextBox rowColPos="(1, 2)" DataField="sph_l"></dTextBox>
> <dTextBox rowColPos="(2, 1)" DataField="cyl_r"></dTextBox>
> <dTextBox rowColPos="(2, 2)" DataField="cyl_l"></dTextBox>
> <dTextBox rowColPos="(3, 1)" DataField="ach_r"></dTextBox>
> <dTextBox rowColPos="(3, 2)" DataField="ach_l"></dTextBox>
> <dTextBox rowColPos="(4, 1)" DataField="add_r"></dTextBox>
> <dTextBox rowColPos="(4, 2)" DataField="add_l"></dTextBox>
> ...
> </dGridSizer>
> ...
>
> This results in the TabOrder sph_r,sph_l,cyl_r,cyl_l,...
> But I want sph_r,cyl_r,ach_r,...,sph_l,cyl_l,...
>
>> Normally, the order or tab order is set to match top to bottom and left
>> to right within a panel (and of course a sizer can also influence the
>> order).
> Ok, maybe I can rearange my textfields and put all *_r fields in one
> dSizer and *_l fields in a second one. - To bad I really liked the
> dGridSizer.
>
>> There is one property 'TabStop' True or False that is available.
> That I have found, but it is no use to me in my situation, since I want
> TabStop but just a different order.
>
>> That said, take a look at dDialog.py around line 365:
>> for pos, btn in enumerate(buttons[1:]):
>> btn.MoveAfterInTabOrder(buttons[pos-1])
>>
>> The above is used for the class->_addControls.
>>
>> Johnf
>> On 01/11/2017 08:26 AM, Max Voß wrote:
>>> Hello,
>>>
>>> is it possible to set a kind of tab-index in a dabo-Form?
>>>
>>> I have got a dPage-Object with a lot of dTextBoxes, dDropDownLists and
>>> so on but they appear in a different order on the Page than I want to
>>> step through them with the tabulator-key. The "tab-index" seems to
>>> depend only on the position on the Page. At least I have not found a
>>> corresponding property in the Object Inspector. Or did I just miss it?
>>>
>>> Thanks in advance for your anwsers,
>>>
>>> greetings Max
>>>
>
>
_______________________________________________
Post Messages to: Dabo-users@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/dabo-users
Searchable Archives: http://leafe.com/archives/search/dabo-users
This message: http://leafe.com/archives/byMID/6bb440d3-c863-4968-f573-12a4ad9cb1b6@jfcomputer.com