입력 값 유효성 검사 기능

This commit is contained in:
geondo55
2025-06-30 14:52:22 +09:00
parent f6c25e1180
commit 6c4aa2fb76
3 changed files with 54 additions and 2 deletions

View File

@@ -251,6 +251,7 @@ GameObject:
- component: {fileID: 6549079342170574329} - component: {fileID: 6549079342170574329}
- component: {fileID: 8772786093202997941} - component: {fileID: 8772786093202997941}
- component: {fileID: 8501740602063653259} - component: {fileID: 8501740602063653259}
- component: {fileID: 1292074844791121958}
m_Layer: 0 m_Layer: 0
m_Name: InputField_Topic m_Name: InputField_Topic
m_TagString: Untagged m_TagString: Untagged
@@ -417,6 +418,19 @@ MonoBehaviour:
isAlert: 0 isAlert: 0
m_InputValidator: {fileID: 0} m_InputValidator: {fileID: 0}
m_ShouldActivateOnSelect: 1 m_ShouldActivateOnSelect: 1
--- !u!114 &1292074844791121958
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5041442594409627906}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5cfbc3180aa0867408d6521529e5cac4, type: 3}
m_Name:
m_EditorClassIdentifier:
inputField: {fileID: 0}
--- !u!1 &5562854965458769467 --- !u!1 &5562854965458769467
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View File

@@ -942,6 +942,7 @@ GameObject:
- component: {fileID: 1294127454145776225} - component: {fileID: 1294127454145776225}
- component: {fileID: 451971561218025839} - component: {fileID: 451971561218025839}
- component: {fileID: 4531525069399822389} - component: {fileID: 4531525069399822389}
- component: {fileID: 3782032704331303633}
m_Layer: 0 m_Layer: 0
m_Name: InputField_Port m_Name: InputField_Port
m_TagString: Untagged m_TagString: Untagged
@@ -1108,6 +1109,19 @@ MonoBehaviour:
isAlert: 0 isAlert: 0
m_InputValidator: {fileID: 0} m_InputValidator: {fileID: 0}
m_ShouldActivateOnSelect: 1 m_ShouldActivateOnSelect: 1
--- !u!114 &3782032704331303633
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2436487502178914535}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6f95cd07bc2246945965157693796194, type: 3}
m_Name:
m_EditorClassIdentifier:
inputField: {fileID: 0}
--- !u!1 &3156314644122750241 --- !u!1 &3156314644122750241
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -2566,6 +2580,7 @@ GameObject:
- component: {fileID: 6749344978886352018} - component: {fileID: 6749344978886352018}
- component: {fileID: 2032036743421240120} - component: {fileID: 2032036743421240120}
- component: {fileID: 7558723559091652677} - component: {fileID: 7558723559091652677}
- component: {fileID: 8720815484175462745}
m_Layer: 0 m_Layer: 0
m_Name: InputField_Domain m_Name: InputField_Domain
m_TagString: Untagged m_TagString: Untagged
@@ -2732,3 +2747,16 @@ MonoBehaviour:
isAlert: 0 isAlert: 0
m_InputValidator: {fileID: 0} m_InputValidator: {fileID: 0}
m_ShouldActivateOnSelect: 1 m_ShouldActivateOnSelect: 1
--- !u!114 &8720815484175462745
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8829135613240903342}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 318ad98d4b818194da00221ee69745cd, type: 3}
m_Name:
m_EditorClassIdentifier:
inputField: {fileID: 0}

View File

@@ -60,13 +60,23 @@ namespace Studio.UI
onMQTTTest?.Invoke(); onMQTTTest?.Invoke();
var domain = InputField_Domain.text; var domain = InputField_Domain.text;
var port = int.Parse(InputField_Port.text); if (string.IsNullOrWhiteSpace(domain))
{
return;
}
if (!int.TryParse(InputField_Port.text, out var port))
{
return;
}
List<string> topics = new(); List<string> topics = new();
foreach (UI_InputTopicItem item in inputTopicItems) foreach (UI_InputTopicItem item in inputTopicItems)
{ {
var topic = item.InputField_Topic.text; var topic = item.InputField_Topic.text;
topics.Add(topic); if (!string.IsNullOrWhiteSpace(topic))
{
topics.Add(topic);
}
} }
var tmpClient = new TemporaryMQTTClient(domain, port, topics, OnTopicTest, OnConnectedClient, OnErrorClient); var tmpClient = new TemporaryMQTTClient(domain, port, topics, OnTopicTest, OnConnectedClient, OnErrorClient);
panel_MQTTTestResult.Open(domain, port.ToString()); panel_MQTTTestResult.Open(domain, port.ToString());