I have a sample Eto I’m working on and having trouble understanding how to control element resizing? A super simplified version of the code (python) I have currently is:
import Eto import Rhino class Dialog_Example(Eto.Forms.Dialog): def OnButton01Click(self, sender, e): print('Button 01') def OnButton02Click(elf, sender, e): print('Button 02') def __init__(self): self.Title = "My Sample Window" self.Resizable = True self.Padding = Eto.Drawing.Padding(5) # Seems not to affect anything? # Create some Controls for the Dialog self.m_txtBox = Eto.Forms.TextBox( Text = 'Example') self.m_txtBox.Width = 300 self.m_Button01 = Eto.Forms.Button(Text = 'Button 01') self.m_Button01.Click += self.OnButton01Click self.m_Button01.Size = Eto.Drawing.Size(100,25) self.m_Button02 = Eto.Forms.Button(Text = 'Button 02') self.m_Button02.Click += self.OnButton02Click self.m_Button02.Size = Eto.Drawing.Size(100,25) # Layout layout = Eto.Forms.DynamicLayout() # Group: Main Group self.groupbox_Main = Eto.Forms.GroupBox(Text = 'My First Group') layout_Group_01 = Eto.Forms.DynamicLayout() layout_Group_01.AddRow(self.m_txtBox, self.m_Button01, self.m_Button02) self.groupbox_Main.Content = layout_Group_01 layout.Add(self.groupbox_Main) # Set the dialog window Content self.Content = layout # Call the Dialog Window dialog = Dialog_Example() rc = dialog.ShowModal(Rhino.UI.RhinoEtoApp.MainWindow)
So that works fine, and gives me as I’d expect:
but when I resize it, only the last button ‘stretches’ to fill horizontally and all three elements stretch to fill vertically:
If I wanted to allow the overall window to be resized, but tell the elements inside to stay constant size (no stretch) is there a way to do that?
Alternately, if I wanted to tell it to keep only the buttons constant size, but allow the text-box to stretch, is there a technique to do that in a case like this?
Any input is much appreciated!