From 4c962b14cea2d4efd2c9158131ae78e25885fd54 Mon Sep 17 00:00:00 2001 From: jasonchenwork Date: Fri, 15 Aug 2025 17:14:12 +0800 Subject: [PATCH] =?UTF-8?q?2508151712=20=E5=A2=9E=E5=8A=A0=E6=B6=88?= =?UTF-8?q?=E9=98=B2=E7=95=AB=E9=9D=A2=E8=87=B3=E7=81=AB=E8=AD=A6=E7=8B=80?= =?UTF-8?q?=E6=85=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- PrimaryFormParts/PrimaryForm.cs | 12 ++++++++++++ Room.cs | 28 ++++++++++++++++------------ img.ini | 2 ++ 3 files changed, 30 insertions(+), 12 deletions(-) diff --git a/PrimaryFormParts/PrimaryForm.cs b/PrimaryFormParts/PrimaryForm.cs index 207549e..2d28c5e 100644 --- a/PrimaryFormParts/PrimaryForm.cs +++ b/PrimaryFormParts/PrimaryForm.cs @@ -400,6 +400,8 @@ namespace DualScreenDemo public void ShowSendOffScreen() { + var data = LoadBtnConfigData(); + sendOffPanel.BringToFront(); sendOffPanel.Visible = true; @@ -413,6 +415,16 @@ namespace DualScreenDemo buttonTopRight.BringToFront(); buttonTopLeft.BringToFront(); buttonThanks.BringToFront(); + + if (Program.room.Getstate() == "fire") + { + sendOffPanel.BackgroundImage = new Bitmap(Path.Combine(serverPath, data["PrimaryFormBtn"]["Calamity"])); + serviceBellPictureBox.Visible = false; + buttonMiddle.Visible = false; + buttonTopRight.Visible = false; + buttonTopLeft.Visible = false; + buttonThanks.Visible = false; + } } // 修正螢幕初始化關鍵 public void HideSendOffScreen() diff --git a/Room.cs b/Room.cs index e0fee8c..2776019 100644 --- a/Room.cs +++ b/Room.cs @@ -7,13 +7,13 @@ namespace DualScreenDemo { public class Room { - public int branch_id =0; + public int branch_id = 0; public string hostName; - + private string State = "error"; private DateTime? startedAt; private DateTime? endedAt; - + public Room() { hostName = System.Net.Dns.GetHostName(); @@ -26,14 +26,14 @@ namespace DualScreenDemo using (var db = new MyDB()) { string sql = "SELECT id FROM branches LIMIT 1"; - if (db.open(sql, null) && db.found())return db.Field("id"); + if (db.open(sql, null) && db.found()) return db.Field("id"); return 0; } } - + private string getDB() { - + using (var db = new MyDB()) { string query = @"SELECT * FROM rooms WHERE branch_id = @branch_id AND CONCAT(type, name) = @hostName"; @@ -52,7 +52,7 @@ namespace DualScreenDemo } return "error"; } - public TimeSpan getTimeSpan() => (endedAt!=null && endedAt.HasValue) ?(TimeSpan)(endedAt.Value - DateTime.Now):TimeSpan.Zero; + public TimeSpan getTimeSpan() => (endedAt != null && endedAt.HasValue) ? (TimeSpan)(endedAt.Value - DateTime.Now) : TimeSpan.Zero; public void setDB(string value) { using (var db = new MyDB()) @@ -68,12 +68,12 @@ namespace DualScreenDemo } public void set(string value) { - string StateDB=getDB(); + string StateDB = getDB(); if (!StateDB.Equals(State)) State = StateDB; else return; - + string marqueeMessage = "歡迎使用超級巨星歡唱,與你共度美好時光。"; Color c = Color.White; if (State.Equals("fire")) @@ -103,7 +103,7 @@ namespace DualScreenDemo PrimaryForm.Instance.logout(); } - + OverlayForm.MainForm.UpdateMarqueeText(marqueeMessage, OverlayForm.MarqueeStartPosition.Middle, c); } @@ -114,9 +114,13 @@ namespace DualScreenDemo return null; } public bool IsClose() => State.Equals("closed"); - + public bool IsOpen() => State.Equals("active"); - + + public string Getstate() + { + return State; + } } diff --git a/img.ini b/img.ini index f0e9c4e..0eb22c4 100644 --- a/img.ini +++ b/img.ini @@ -43,6 +43,8 @@ Close=themes\superstar\主畫面\選單內介面_送客畫面.jpg Voice=themes\superstar\button\3.介面\其他符號_人聲.png +Calamity=themes\superstar\主畫面\選單內介面_消防畫面.jpg + [PrimaryFormSubBtn]