Files
dl/document/html/dl__ui__msg__box_8h_source.html
2026-09-16 14:07:40 +08:00

149 lines
18 KiB
HTML
Vendored
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="zh">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>dl: D:/dl/dl/ui/extend/dl_ui_msg_box.h 源文件</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">dl
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.13.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',false,false,'search.php','搜索',false);
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_17297ffb27ce571941f5fb5008f01a1f.html">dl</a></li><li class="navelem"><a class="el" href="dir_4abfab93245d32d76245ca9307c069b4.html">ui</a></li><li class="navelem"><a class="el" href="dir_6e36dfefcd203f811989df06ad86e5df.html">extend</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">dl_ui_msg_box.h</div></div>
</div><!--header-->
<div class="contents">
<a href="dl__ui__msg__box_8h.html">浏览该文件的文档.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#ifndef DL_DISABLE_RENDER</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#include &quot;<a class="code" href="dl__component__use_8h.html">misc/dl_component_use.h</a>&quot;</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#include &quot;<a class="code" href="dl__ui__background_8h.html">ui/dl_ui_background.h</a>&quot;</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &quot;<a class="code" href="dl__ui__panel_8h.html">ui/dl_ui_panel.h</a>&quot;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#include &quot;<a class="code" href="dl__ui__window_8h.html">ui/dl_ui_window.h</a>&quot;</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="preprocessor">#include &quot;<a class="code" href="dl__ui__list__box_8h.html">ui/dl_ui_list_box.h</a>&quot;</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespacedl_1_1_u_i.html">dl::UI</a></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span>{</div>
<div class="foldopen" id="foldopen00024" data-start="{" data-end="};">
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="classdl_1_1_u_i_1_1_msg_box.html"> 24</a></span><span class="keyword">class </span>MsgBox : <span class="keyword">public</span> <a class="code hl_function" href="classdl_1_1_u_i_1_1_window.html#a277133c39ef56d54e2349a0c7de7740a">Window</a></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span>{</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span></div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"><a class="line" href="classdl_1_1_u_i_1_1_msg_box.html#ad291549d252dcaea181e4151639d4299"> 32</a></span> <span class="keyword">static</span> MsgBox* <a class="code hl_function" href="classdl_1_1_u_i_1_1_msg_box.html#ad291549d252dcaea181e4151639d4299">Create</a>(<a class="code hl_class" href="classdl_1_1_u_i_1_1_text.html">UI::Text</a>* title, <a class="code hl_class" href="classdl_1_1_u_i_1_1_text.html">UI::Text</a>* content, <a class="code hl_class" href="classdl_1_1_u_i_1_1_button.html">UI::Button</a>* btn);</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"><a class="line" href="classdl_1_1_u_i_1_1_msg_box.html#a463829006783a34a375a9f273abcf58e"> 38</a></span> <a class="code hl_class" href="classdl_1_1_u_i_1_1_panel.html">Panel</a>* <a class="code hl_function" href="classdl_1_1_u_i_1_1_msg_box.html#a463829006783a34a375a9f273abcf58e">GetPanelButton</a>() { <span class="keywordflow">return</span> _panelBtn; }</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> </div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="classdl_1_1_u_i_1_1_msg_box.html#a40a54daa50fc18d3f7b28557fa2b6faf"> 40</a></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classdl_1_1_u_i_1_1_msg_box.html#a40a54daa50fc18d3f7b28557fa2b6faf">Update</a>() <span class="keyword">override</span>;</div>
<div class="foldopen" id="foldopen00045" data-start="{" data-end="}">
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"><a class="line" href="classdl_1_1_u_i_1_1_msg_box.html#a1d8d39bd0c01a93ef24594a02c196577"> 45</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classdl_1_1_u_i_1_1_msg_box.html#a1d8d39bd0c01a93ef24594a02c196577">SetClickClose</a>(<span class="keywordtype">bool</span> close)</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> {</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> _bClickClose = close;</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> }</div>
</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span></div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"><a class="line" href="classdl_1_1_u_i_1_1_msg_box.html#aded911a14b9d1928e92668258232b172"> 52</a></span> <span class="keywordtype">size_t</span> <a class="code hl_function" href="classdl_1_1_u_i_1_1_msg_box.html#aded911a14b9d1928e92668258232b172">GetClickIndex</a>();</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"><a class="line" href="classdl_1_1_u_i_1_1_msg_box.html#ad6972d69da4b6935d15c718b43d661a3"> 56</a></span> <span class="keywordtype">size_t</span> <a class="code hl_function" href="classdl_1_1_u_i_1_1_msg_box.html#ad6972d69da4b6935d15c718b43d661a3">GetOverOnceIndex</a>();</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"><a class="line" href="classdl_1_1_u_i_1_1_msg_box.html#a1a7833d5110235f6a3f0b200f9956652"> 65</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classdl_1_1_u_i_1_1_msg_box.html#a1a7833d5110235f6a3f0b200f9956652">Set</a>(std::string_view title, std::string_view info, std::vector&lt;std::string_view&gt; all_btn);</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> </div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> </div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"><a class="line" href="classdl_1_1_u_i_1_1_msg_box.html#a3de7f3af185dcf0392d30a6436e89dae"> 68</a></span> <a class="code hl_function" href="classdl_1_1_u_i_1_1_msg_box.html#a3de7f3af185dcf0392d30a6436e89dae">~MsgBox</a>();</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> MsgBox() :</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> _bAddTab{ true },</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> _bClickClose{ true },</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> _btn{ nullptr }</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> {</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> }</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordtype">bool</span> _bAddTab;</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <span class="keywordtype">bool</span> _bClickClose; <span class="comment">// 点击任意按钮直接关闭</span></div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> </div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <a class="code hl_class" href="classdl_1_1_u_i_1_1_text.html">UI::Text</a>* _txtTitle;</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <a class="code hl_class" href="classdl_1_1_u_i_1_1_text.html">UI::Text</a>* _txtContent;</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <a class="code hl_class" href="classdl_1_1_u_i_1_1_button.html">UI::Button</a>* _btn;</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <a class="code hl_class" href="classdl_1_1_u_i_1_1_panel.html">UI::Panel</a>* _panelBtn;</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> </div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> std::vector&lt;UI::Button*&gt; _allBtn;</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> </div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="keywordtype">void</span> _init();</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span>};</div>
</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span>}</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> </div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="aclassdl_1_1_u_i_1_1_button_html"><div class="ttname"><a href="classdl_1_1_u_i_1_1_button.html">dl::UI::Button</a></div><div class="ttdoc">按钮(Button、Switch、Radio</div><div class="ttdef"><b>定义</b> <a href="dl__ui__button__base_8h_source.html#l00029">dl_ui_button_base.h:30</a></div></div>
<div class="ttc" id="aclassdl_1_1_u_i_1_1_msg_box_html_a1a7833d5110235f6a3f0b200f9956652"><div class="ttname"><a href="classdl_1_1_u_i_1_1_msg_box.html#a1a7833d5110235f6a3f0b200f9956652">dl::UI::MsgBox::Set</a></div><div class="ttdeci">void Set(std::string_view title, std::string_view info, std::vector&lt; std::string_view &gt; all_btn)</div><div class="ttdoc">设置内容</div></div>
<div class="ttc" id="aclassdl_1_1_u_i_1_1_msg_box_html_a1d8d39bd0c01a93ef24594a02c196577"><div class="ttname"><a href="classdl_1_1_u_i_1_1_msg_box.html#a1d8d39bd0c01a93ef24594a02c196577">dl::UI::MsgBox::SetClickClose</a></div><div class="ttdeci">void SetClickClose(bool close)</div><div class="ttdoc">设置是否点击任意按钮关闭窗口</div><div class="ttdef"><b>定义</b> <a href="#l00045">dl_ui_msg_box.h:45</a></div></div>
<div class="ttc" id="aclassdl_1_1_u_i_1_1_msg_box_html_a3de7f3af185dcf0392d30a6436e89dae"><div class="ttname"><a href="classdl_1_1_u_i_1_1_msg_box.html#a3de7f3af185dcf0392d30a6436e89dae">dl::UI::MsgBox::~MsgBox</a></div><div class="ttdeci">~MsgBox()</div></div>
<div class="ttc" id="aclassdl_1_1_u_i_1_1_msg_box_html_a40a54daa50fc18d3f7b28557fa2b6faf"><div class="ttname"><a href="classdl_1_1_u_i_1_1_msg_box.html#a40a54daa50fc18d3f7b28557fa2b6faf">dl::UI::MsgBox::Update</a></div><div class="ttdeci">virtual void Update() override</div><div class="ttdoc">帧函数 @info 子类重载后,需要调用 Window::Update()</div></div>
<div class="ttc" id="aclassdl_1_1_u_i_1_1_msg_box_html_a463829006783a34a375a9f273abcf58e"><div class="ttname"><a href="classdl_1_1_u_i_1_1_msg_box.html#a463829006783a34a375a9f273abcf58e">dl::UI::MsgBox::GetPanelButton</a></div><div class="ttdeci">Panel * GetPanelButton()</div><div class="ttdoc">返回按钮组 @info 设置整体位置和按钮布局</div><div class="ttdef"><b>定义</b> <a href="#l00038">dl_ui_msg_box.h:38</a></div></div>
<div class="ttc" id="aclassdl_1_1_u_i_1_1_msg_box_html_ad291549d252dcaea181e4151639d4299"><div class="ttname"><a href="classdl_1_1_u_i_1_1_msg_box.html#ad291549d252dcaea181e4151639d4299">dl::UI::MsgBox::Create</a></div><div class="ttdeci">static MsgBox * Create(UI::Text *title, UI::Text *content, UI::Button *btn)</div><div class="ttdoc">创建窗口</div></div>
<div class="ttc" id="aclassdl_1_1_u_i_1_1_msg_box_html_ad6972d69da4b6935d15c718b43d661a3"><div class="ttname"><a href="classdl_1_1_u_i_1_1_msg_box.html#ad6972d69da4b6935d15c718b43d661a3">dl::UI::MsgBox::GetOverOnceIndex</a></div><div class="ttdeci">size_t GetOverOnceIndex()</div><div class="ttdoc">返回经过的按钮下标,不包含关闭按钮</div></div>
<div class="ttc" id="aclassdl_1_1_u_i_1_1_msg_box_html_aded911a14b9d1928e92668258232b172"><div class="ttname"><a href="classdl_1_1_u_i_1_1_msg_box.html#aded911a14b9d1928e92668258232b172">dl::UI::MsgBox::GetClickIndex</a></div><div class="ttdeci">size_t GetClickIndex()</div><div class="ttdoc">返回点击的按钮下标,不包含关闭按钮</div></div>
<div class="ttc" id="aclassdl_1_1_u_i_1_1_panel_html"><div class="ttname"><a href="classdl_1_1_u_i_1_1_panel.html">dl::UI::Panel</a></div><div class="ttdoc">UI面板</div><div class="ttdef"><b>定义</b> <a href="dl__ui__panel_8h_source.html#l00064">dl_ui_panel.h:65</a></div></div>
<div class="ttc" id="aclassdl_1_1_u_i_1_1_text_html"><div class="ttname"><a href="classdl_1_1_u_i_1_1_text.html">dl::UI::Text</a></div><div class="ttdoc">ui文本</div><div class="ttdef"><b>定义</b> <a href="dl__ui__text_8h_source.html#l00025">dl_ui_text.h:26</a></div></div>
<div class="ttc" id="aclassdl_1_1_u_i_1_1_window_html_a277133c39ef56d54e2349a0c7de7740a"><div class="ttname"><a href="classdl_1_1_u_i_1_1_window.html#a277133c39ef56d54e2349a0c7de7740a">dl::UI::Window::Window</a></div><div class="ttdeci">Window()</div><div class="ttdef"><b>定义</b> <a href="dl__ui__window_8h_source.html#l00127">dl_ui_window.h:127</a></div></div>
<div class="ttc" id="adl__component__use_8h_html"><div class="ttname"><a href="dl__component__use_8h.html">dl_component_use.h</a></div><div class="ttdoc">组件实例</div></div>
<div class="ttc" id="adl__ui__background_8h_html"><div class="ttname"><a href="dl__ui__background_8h.html">dl_ui_background.h</a></div><div class="ttdoc">作为绘图背景</div></div>
<div class="ttc" id="adl__ui__list__box_8h_html"><div class="ttname"><a href="dl__ui__list__box_8h.html">dl_ui_list_box.h</a></div><div class="ttdoc">UI之列表框</div></div>
<div class="ttc" id="adl__ui__panel_8h_html"><div class="ttname"><a href="dl__ui__panel_8h.html">dl_ui_panel.h</a></div><div class="ttdoc">ui之panel</div></div>
<div class="ttc" id="adl__ui__window_8h_html"><div class="ttname"><a href="dl__ui__window_8h.html">dl_ui_window.h</a></div><div class="ttdoc">UI之窗口</div></div>
<div class="ttc" id="anamespacedl_1_1_u_i_html"><div class="ttname"><a href="namespacedl_1_1_u_i.html">dl::UI</a></div><div class="ttdoc">UI系统</div><div class="ttdef"><b>定义</b> <a href="dl__ui__background_8h_source.html#l00020">dl_ui_background.h:21</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
制作者&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.1
</small></address>
</div><!-- doc-content -->
</body>
</html>