========= import เครื่องมือที่ต้องการใช้งาน==================
from kivy.app import App
from kivy.lang import Builder
from kivy.config import Config
from kivy.metrics import dp, sp
from kivy.uix.label import Label
from kivy.uix.button import Button
from kivy.uix.widget import Widget
from kivy.uix.screenmanager import ScreenManager, Screen
=============load file===================
โหลดไฟล์ .kv ที่ทำการจัดการหน้าต่างมาใช้งาน
#load file guiโหลดไฟล์ .kv ที่ทำการจัดการหน้าต่างมาใช้งาน
Builder.load_file("gui.kv")
สร้าง class สำหรับแต่ละการทำงานไว้ โดยให้ pass ไปก่อนเพื่อรอนำมารวมการฟังก์ชันการทำงานที่เพื่อนออกแบบ
# Declare both screens
============== screen manager===============
# Declare both screens
class StartScreen(Screen):
pass
class MenuScreen(Screen):
pass
class TranslateScreen(Screen):
pass
class KeepScreen(Screen):
pass
class PlayScreen(Screen):
pass
จัดการหน้าต่าง โดยการใช้ screenmanager และ add widget ในส่วนของ screen แต่ละหน้าเข้าไปให้ screenmanager จัดการ
======ส่วนเรียกใช้ให้แสดงการทำงาน========
#ให้เลือกการทำงานแต่ละ case
#หน้า MANU
#หน้าต่างการแปลความหมาย
#หน้าต่างคำศัพท์ที่ Keep
#หน้าต่างให้เล่นเกมสะกดคำศัพท์
# Create the screen manager
sm = ScreenManager()
sm.add_widget(StartScreen(name='START'))
sm.add_widget(MenuScreen(name='MENU'))
sm.add_widget(TranslateScreen(name='TRANSLATE'))
sm.add_widget(KeepScreen(name='KEEP'))
sm.add_widget(PlayScreen(name='SPELL'))
class TestApp(App):
def build(self):
Config.set('graphics' , 'width' , '500')
Config.set('graphics' , 'height' , '300')
#set not to change size window
Config.set('graphics' , 'resizable' , False)
return sm
if __name__ == '__main__':
TestApp().run()
===================================================
การจัดหน้าต่าง GUI ใช้การจัดการด้วยไฟล์ .kv
#หน้าต่างแรก แสดงชื่อ Grade "A" English ปุ่ม START เข้าโปรแกรม และ Exit เพื่อปิดโปรแกรม
<StartScreen>:
BoxLayout:
orientation: 'vertical'
Label:
text:'Grade "A" English'
font_size:'60' #กำหนดขนาดตัวอักษร
Button:
text: 'START'
on_press: root.manager.current = 'MENU' #เมื่อกดปุ่มนี้ให้เชื่องโยงไปที่หน้า MANU
Button:
text: 'Exit'
#หน้า MANU
<MenuScreen>:
BoxLayout:
orientation: 'vertical'
Button:
text: 'TRANSLATE'
on_press: root.manager.current = 'TRANSLATE'#เข้าไปที่หน้า TRANSLATE
Button:
text: 'KEEP'
on_press: root.manager.current = 'KEEP'#เข้าไปที่หน้า KEEP
Button:
text: 'SPELL'
on_press: root.manager.current = 'SPELL'#เข้าไปที่หน้า SPELL
Button:
text: 'EXIT'
on_press: root.manager.current = 'START'#กลับไปที่หน้า START
<TranslateScreen>:
BoxLayout:
orientation: 'vertical'
Button:
text: 'SEARCH' #ปุ่ม SEARCH สำหรับกดค้นหาความหมาย
Button:
text: 'Back to menu'
on_press: root.manager.current = 'MENU' #กลับไปที่หน้า MENU
<KeepScreen>:
BoxLayout:
orientation: 'vertical'
Label:
text: 'KEEP' # แสดงชื่อหัวข้อว่า KEEP
Button:
text:'word' #ส่วนปุ่มสำหรับเวลาเพิ่มคำศัพท์เข้ามาจะให้แสดงเป็นปุ่มแต่ละปุ่ม
Button:
text: 'Back to menu'
on_press: root.manager.current = 'MENU' #กลับไปที่หน้า MENU
<PlayScreen>:
BoxLayout:
orientation: 'vertical'
Label:
text: 'Meaning' #ให้แสดงความหมายของคำที่ต้องการให้สะกด
Button:
text: 'Back to menu'
on_press: root.manager.current = 'MENU' #กลับไปที่หน้า MENU
=====================================================
ปัญหาปัจจุบัน
นำภาษาไทยขึ้นแสดงบน GUI ไม่ได้
ปรับขนาดหน้าจอไม่ได้
ฟังก์ชันการทำงานยังสร้างไม่ครบ
ยังไม่ได้เชื่อมต่อส่วนฟังก์ชันกับหน้า GUI
ยังไม่สามารถเชื่อมต่อฐานข้อมูลได้
=====================================================
ปัญหาปัจจุบัน
นำภาษาไทยขึ้นแสดงบน GUI ไม่ได้
ปรับขนาดหน้าจอไม่ได้
ฟังก์ชันการทำงานยังสร้างไม่ครบ
ยังไม่ได้เชื่อมต่อส่วนฟังก์ชันกับหน้า GUI
ยังไม่สามารถเชื่อมต่อฐานข้อมูลได้
=====================================================
commit แล้ว
ไม่มีความคิดเห็น:
แสดงความคิดเห็น