# Ruby/Tk grid

**URL:** <https://www.ruby-forum.com/t/ruby-tk-grid/170121>\
**Category:** Ruby\
**Created:** [June 12, 2009, 4:10pm UTC](https://www.ruby-forum.com/t/ruby-tk-grid/170121 "2009-06-12T16:10:21Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![ftf3k3](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/f/b9bd4f/32.png) [@ftf3k3](https://www.ruby-forum.com/u/ftf3k3)\
**Post date:** [June 12, 2009, 4:10pm UTC](https://www.ruby-forum.com/t/ruby-tk-grid/170121/1 "2009-06-12T16:10:21Z")

</div>

I want a 23\*36 grid and the ability to put widgets at a specified  
location (row/column). I’ve been searching for a while now and I still  
can’t find any clear documentation.

Can somebody help please?  
Regards

---

<div class="post-metadata">

**Author:** ![ftf3k3](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/f/b9bd4f/32.png) [@ftf3k3](https://www.ruby-forum.com/u/ftf3k3)\
**Post date:** [June 13, 2009, 2:02am UTC](https://www.ruby-forum.com/t/ruby-tk-grid/170121/2 "2009-06-13T02:02:07Z")

</div>

From: Ftf 3k3 [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
Subject: Ruby/Tk grid  
Date: Fri, 12 Jun 2009 23:10:23 +0900  
Message-ID: [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

> I want a 23\*36 grid and the ability to put widgets at a specified  
> location (row/column). I’ve been searching for a while now and I still  
> can’t find any clear documentation.

## For example,

require ‘tk’

base = TkFrame.new.pack(:expand=\>true, :fill=\>:both)

TkGrid.rowconfigure(base, 0, ‘weight’=\>1, ‘minsize’=\>0)  
TkGrid.columnconfigure(base, 0, ‘weight’=\>1, ‘minsize’=\>0)

c = TkCanvas.new(base).grid(:row=\>0, :column=\>0, :sticky=\>‘news’)  
c.xscrollbar TkScrollbar.new(base).grid(:row=\>1, :column=\>0,  
:sticky=\>‘ew’)  
c.yscrollbar TkScrollbar.new(base).grid(:row=\>0, :column=\>1,  
:sticky=\>‘ns’)

cwin = TkcWindow.new(c, [0, 0], :window=\>(f = TkFrame.new(c)),  
:anchor=\>:nw)  
f.bind(‘Configure’){ c.scrollregion = cwin.bbox }

23.times{|x|  
36.times{|y|  
TkButton.new(f,:text=\>“#{x}x#{y}”).grid(:column=\>y,:row=\>x,:sticky=\>‘news’)  
}  
}

Tk.mainloop

---

<div class="post-metadata">

**Author:** ![ftf3k3](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/f/b9bd4f/32.png) [@ftf3k3](https://www.ruby-forum.com/u/ftf3k3)\
**Post date:** [June 13, 2009, 7:52pm UTC](https://www.ruby-forum.com/t/ruby-tk-grid/170121/3 "2009-06-13T19:52:30Z")

</div>

Thanks this was helpful, I did my first Tk interface.
