2016-07-26 9 views
1

これはおそらく簡単な答えですが、他に何を試していいのか分かりません。 私は問題を封じ込めたので、私は小さなコードを提供します。 tkltkRボタンがサイズ変更されません

これらのボタンは、マウスで角をドラッグしてウィンドウを大きくすると、すべての水平スペースを占有することになっています。縦のサイズは同じままであるはずです。

私は1つのボタン(下のコード)では動作させることができましたが、ボタンの行では動作させませんでした。

は、私は自分の質問に対する解決策を発見した事前

require(tcltk) 

botos1 <- function(panel){panel} 
panel01<- tktoplevel(bg="darkcyan") 
row1 = tkframe(panel01,width = 500, height = 70, bg = "yellow",borderwidth = 3) 

tkgrid(row1) 
tkgrid.configure(row1,sticky="ew") 
tkgrid.columnconfigure(panel01,0,weight=1) 
tkgrid.rowconfigure(panel01,0,weight=1) 
tkgrid.rowconfigure(row1,0,weight=1) 
tkgrid.columnconfigure(row1,0,weight=1) 
tkgrid.configure(row1,sticky='nwe') 


bot1<- tkbutton(row1,text="Time series",width = 35,command=botos1) 

tkgrid(bot1) 
tkgrid.configure(bot1,sticky="ew") 
+1

無関係ですが、「require」を使用すると、エラーが発生しなくなります。代わりに 'library'を使用してください。 –

+0

ありがとうございます。私はそれを念頭に置いておきます – Marina

答えて

1

でいただきありがとうございます。ここにあります。 フレームの内側にフレームを作りました。内側のフレームはtkpackを通して処理されるので、ボタンのサイズを簡単に変更できます。しかし、外側のフレームはtkgridを通して処理され、メインパネル内で固定された位置に置くことができます。

require(tcltk) 

botos1 <- function(panel){panel} 
panel01<- tktoplevel(bg="darkcyan") 

row1 = tkframe(panel01,width = 500, height = 70, bg = "yellow",borderwidth = 3) 

tkgrid(row1,row=0) 
tkgrid.configure(row1,sticky="new") 
tkgrid.columnconfigure(panel01,0,weight=1) 

row11 = tkframe(row1,width = 450, height = 50, bg = "cyan",borderwidth = 3) 

bot1<- tkbutton(row11,text="Time series1",width = 35,command=botos1) 
bot2 <- tkbutton(row11,text="Time series2",width = 35,command=botos1) 
bot3 <- tkbutton(row11,text="Time series3",width = 35,command=botos1) 

tkpack(bot1,side="left",expand=TRUE,fill="both") 
tkpack(bot2,side="left",expand=TRUE,fill="both") 
tkpack(bot3,side="left",expand=TRUE,fill="both") 

tkpack(row11,anchor="nw",fill="both") 
関連する問題