2017-03-17 2 views
0

레이블, 단추 및 텍스트 상자를 만드는 kivy 코드가 있습니다. 단추 옆에 텍스트 상자를 놓고 싶습니다. 어떻게 할 수 있습니까?어떻게하면 단추 옆에 텍스트 상자 위치를 바꿀 수 있습니까? (kivy)

import socket 
import sys 
import os 
import kivy 
from kivy.app import App 
from kivy.uix.button import Button 
from kivy.uix.image import Image 
from kivy.uix.textinput import TextInput 
from kivy.uix.boxlayout import BoxLayout 
from kivy.lang import Builder 
from kivy.uix.popup import Popup 
from kivy.uix.bubble import Bubble 
from kivy.uix.gridlayout import GridLayout 
from kivy.uix.label import Label 
class TextInputApp(App): 
    def build(self): 

     layout = BoxLayout(padding=10, orientation='vertical') 
     btn1 = Button(text="OK", size_hint=(0.49, 0.1),pos_hint={'x': .51, 'center_y': .5}) 
     btn1.bind(on_press=self.buttonClicked) 
     layout.add_widget(btn1) 
     self.txt1 = TextInput(multiline=False, text='', 
              size_hint=(0.5, 0.1)) 
     layout.add_widget(self.txt1) 
     self.lbl1 = Label(text="Write your guess in the blank text box", size_hint=(1, None), height=30) 
     layout.add_widget(self.lbl1) 

     return layout 

    def buttonClicked(self,btn): 
     print "hi" 

TextInputApp().run() 

답변

0

Button 및 TextInput을 유지하기 위해 가로 방향으로 다른 BoxLayout을 만들 수 있습니다.

class TextInputApp(App): 
    def build(self): 

     layout = BoxLayout(padding=10, orientation='vertical') 
     # Second boxlayout 
     layout2 = BoxLayout() 
     # Add BoxLayout do main layout 
     layout.add_widget(layout2) 

     # Drop old size and pos_hints 
     btn1 = Button(text="OK") 
     btn1.bind(on_press=self.buttonClicked) 
     # Add Button to secondary boxlayout 
     layout2.add_widget(btn1) 
     self.txt1 = TextInput(multiline=False, text='', 
              size_hint=(0.5, 0.1)) 
     layout.add_widget(self.txt1) 
     # Drop size_hint 
     self.lbl1 = Label(text="Write your guess in the blank text box") 
     layout2.add_widget(self.lbl1) 

     return layout 

버튼과의 TextInput의 크기를 변경하려면 보조 BoxLayout가에 그를 설정할 수 있습니다

layout2 = BoxLayout(size_hint_y=None, height=30) 
관련 문제