ake178178 commited on
Commit
f7421bf
·
verified ·
1 Parent(s): 896cf6f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +21 -15
app.py CHANGED
@@ -50,34 +50,40 @@ def main_interface():
50
  with gr.Row():
51
  username = gr.Textbox(label="用戶名", placeholder="輸入用戶名")
52
  password = gr.Textbox(label="密碼", type="password", placeholder="輸入密碼")
53
- login_btn = gr.Button("登錄")
54
  login_msg = gr.Textbox(label="登錄消息", interactive=False)
55
 
56
  # 隱藏的主界面
57
  main_content = gr.Group(visible=False)
58
  with main_content:
59
  with gr.Row():
60
- with gr.Column():
61
- gr.Markdown("### 輸入活動類型")
62
- activity_input = gr.Dropdown(
63
- choices=["拉屎", "尿尿", "全吃了", "吃了一半", "沒怎麼吃"],
64
- label="活動"
65
- )
66
- activity_btn = gr.Button("記錄活動")
67
- output_msg = gr.Textbox(label="系統消息", interactive=False)
68
- with gr.Column():
69
- gr.Markdown("### 活動記錄")
70
- data_table = gr.Dataframe(headers=["活動", "時間"], datatype=["str", "str"], interactive=False)
71
- refresh_btn = gr.Button("刷新數據")
72
 
73
  # 功能邏輯
74
  def handle_login(username, password):
75
  success, msg = login(username, password)
76
  return gr.update(visible=success), gr.update(value=msg)
77
 
 
 
 
 
78
  login_btn.click(handle_login, inputs=[username, password], outputs=[main_content, login_msg])
79
- activity_btn.click(lambda x: save_activity(x), inputs=activity_input, outputs=output_msg)
80
- refresh_btn.click(get_activity_data, outputs=data_table)
 
 
 
 
 
81
 
82
  return app
83
 
 
50
  with gr.Row():
51
  username = gr.Textbox(label="用戶名", placeholder="輸入用戶名")
52
  password = gr.Textbox(label="密碼", type="password", placeholder="輸入密碼")
53
+ login_btn = gr.Button(value="登錄")
54
  login_msg = gr.Textbox(label="登錄消息", interactive=False)
55
 
56
  # 隱藏的主界面
57
  main_content = gr.Group(visible=False)
58
  with main_content:
59
  with gr.Row():
60
+ gr.Markdown("### 點擊按鈕記錄活動")
61
+ with gr.Row():
62
+ buttons = ["拉屎", "尿尿", "全吃了", "吃了一半", "沒怎麼吃"]
63
+ activity_buttons = [
64
+ gr.Button(value=btn) for btn in buttons
65
+ ]
66
+ with gr.Row():
67
+ gr.Markdown("### 活動記錄")
68
+ data_table = gr.Dataframe(headers=["活動", "時間"], datatype=["str", "str"], interactive=False)
 
 
 
69
 
70
  # 功能邏輯
71
  def handle_login(username, password):
72
  success, msg = login(username, password)
73
  return gr.update(visible=success), gr.update(value=msg)
74
 
75
+ def handle_activity(activity):
76
+ save_activity(activity)
77
+ return get_activity_data(), f"記錄成功:{activity}"
78
+
79
  login_btn.click(handle_login, inputs=[username, password], outputs=[main_content, login_msg])
80
+
81
+ for btn, activity in zip(activity_buttons, buttons):
82
+ btn.click(
83
+ lambda a=activity: handle_activity(a),
84
+ inputs=[],
85
+ outputs=[data_table, gr.Textbox(interactive=False, visible=False)]
86
+ )
87
 
88
  return app
89