⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wg__listbox_8cpp-source.html

📁 一个小巧的嵌入式图形系统wGUI, 可以用VC编译
💻 HTML
📖 第 1 页 / 共 3 页
字号:
00227                {00228                     <span class="keywordflow">switch</span> (pKeyMsg-&gt;<a class="code" href="classwGui_1_1CKeyboardMessage.html#m2">Key</a>)00229                     {00230                          <span class="keywordflow">case</span> SDLK_DOWN:00231                          {00232                               <span class="keywordflow">if</span> (<a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> + 1 &lt; <a class="code" href="classwGui_1_1CListBox.html#a8">Size</a>())00233                               {00234                                    <a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a>++;00235                                    <span class="keywordtype">int</span> diff = <a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> - <a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-&gt;<a class="code" href="classwGui_1_1CScrollBar.html#a6">GetPosition</a>();00236                                    <a class="code" href="classwGui_1_1CRect.html">CRect</a> ClientRect(<a class="code" href="classwGui_1_1CWindow.html#a5">GetClientRect</a>());00237                                    <span class="keywordflow">if</span> (<a class="code" href="classwGui_1_1CListBox.html#n2">m_iItemHeight</a> * (<a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-&gt;<a class="code" href="classwGui_1_1CScrollBar.html#a6">GetPosition</a>() + diff + 1) &gt; (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>) ClientRect.<a class="code" href="classwGui_1_1CRect.html#a24">Height</a>())00238                                    {00239                                         <a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-&gt;<a class="code" href="classwGui_1_1CScrollBar.html#a5">SetPosition</a>(<a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-&gt;<a class="code" href="classwGui_1_1CScrollBar.html#a6">GetPosition</a>() + 1);00240                                    }00241 00242                                    <a class="code" href="classwGui_1_1CWindow.html#a23">StartDrawProc</a>();00243                                    bHandled = <span class="keyword">true</span>;00244                               }00245                               <span class="keywordflow">break</span>;00246                          }00247                          <span class="keywordflow">case</span> SDLK_UP:00248                          {00249                               <span class="keywordflow">if</span> ( <a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> &gt; 0 )00250                               {00251                                    <a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a>--;00252                                    <span class="keywordflow">if</span> (<a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> &lt; <a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-&gt;<a class="code" href="classwGui_1_1CScrollBar.html#a6">GetPosition</a>())00253                                    {00254                                         <a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-&gt;<a class="code" href="classwGui_1_1CScrollBar.html#a5">SetPosition</a>(<a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-&gt;<a class="code" href="classwGui_1_1CScrollBar.html#a6">GetPosition</a>() - 1);00255                                    }00256                                    <a class="code" href="classwGui_1_1CWindow.html#a23">StartDrawProc</a>();00257                                    bHandled = <span class="keyword">true</span>;00258                               }00259                               <span class="keywordflow">break</span>;00260                          }00261                          <span class="keywordflow">case</span> SDLK_PAGEDOWN:00262                          {00263                               <a class="code" href="classwGui_1_1CRect.html">CRect</a> ClientRect(<a class="code" href="classwGui_1_1CWindow.html#a5">GetClientRect</a>());00264                               <span class="keywordtype">int</span> nSize = <a class="code" href="classwGui_1_1CListBox.html#a8">Size</a>() - 1;00265                               <span class="keywordtype">int</span> nItemsPerPage = ClientRect.<a class="code" href="classwGui_1_1CRect.html#a24">Height</a>() / <a class="code" href="classwGui_1_1CListBox.html#n2">m_iItemHeight</a>;00266                               <span class="keywordflow">if</span> (<a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> + nItemsPerPage &lt; nSize)00267                               {00268                                    <a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> += nItemsPerPage;00269                               }00270                               <span class="keywordflow">else</span>00271                               {00272                                    <a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> = nSize;00273                               }00274                               <a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-&gt;<a class="code" href="classwGui_1_1CScrollBar.html#a5">SetPosition</a>(<a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a>);00275                               <a class="code" href="classwGui_1_1CWindow.html#a23">StartDrawProc</a>();00276                               bHandled=<span class="keyword">true</span>;00277                               <span class="keywordflow">break</span>;00278                          }00279                          <span class="keywordflow">case</span> SDLK_PAGEUP:00280                          {00281                               <a class="code" href="classwGui_1_1CRect.html">CRect</a> ClientRect(<a class="code" href="classwGui_1_1CWindow.html#a5">GetClientRect</a>());00282                               <span class="keywordtype">int</span> nItemsPerPage = ClientRect.<a class="code" href="classwGui_1_1CRect.html#a24">Height</a>() / <a class="code" href="classwGui_1_1CListBox.html#n2">m_iItemHeight</a>;00283                               <span class="keywordflow">if</span> (<a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> - nItemsPerPage &gt; 0)00284                               {00285                                    <a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> -= nItemsPerPage;00286                               }00287                               <span class="keywordflow">else</span>00288                               {00289                                    <a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> = 0;00290                               }00291                               <a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-&gt;<a class="code" href="classwGui_1_1CScrollBar.html#a5">SetPosition</a>(<a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a>);00292                               <a class="code" href="classwGui_1_1CWindow.html#a23">StartDrawProc</a>();00293                               bHandled=<span class="keyword">true</span>;00294                               <span class="keywordflow">break</span>;00295                          }00296                          <span class="keywordflow">case</span> SDLK_SPACE:00297                          {00298                               <span class="keywordflow">if</span> (! <a class="code" href="classwGui_1_1CListBox.html#n4">m_Items</a>.empty())00299                               {00300                                    <a class="code" href="classwGui_1_1CListBox.html#a10">SetSelection</a>(<a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a>, !<a class="code" href="classwGui_1_1CListBox.html#a9">IsSelected</a>(<a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a>));00301                                    <a class="code" href="classwGui_1_1CWindow.html#a23">StartDrawProc</a>();00302                               }00303                               bHandled = <span class="keyword">true</span>;00304                               <span class="keywordflow">break</span>;00305                          }00306                          <span class="keywordflow">default</span>:00307                          {00308                               bHandled=<span class="keyword">false</span>;00309                               <span class="keywordflow">break</span>;00310                          }00311                     }00312                }00313                <span class="keywordflow">break</span>;00314           }00315           <span class="keywordflow">case</span> CMessage::CTRL_VALUECHANGE:00316           <span class="keywordflow">case</span> CMessage::CTRL_VALUECHANGING:00317           {00318                <span class="keywordflow">if</span> (pMessage-&gt;<a class="code" href="classwGui_1_1CMessage.html#a4">Source</a>() == <a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>)00319                {00320                     <a class="code" href="classwGui_1_1CWindow.html#a23">StartDrawProc</a>();00321                     bHandled = <span class="keyword">true</span>;00322                }00323                <span class="keywordflow">break</span>;00324           }00325           <span class="keywordflow">default</span> :00326                bHandled = CWindow::HandleMessage(pMessage);00327                <span class="keywordflow">break</span>;00328           }00329      }00330 00331      <span class="keywordflow">return</span> bHandled;00332 }00333 00334 }</pre></div><hr><address style="align: right;"><small>Generated on Sat Oct 25 12:43:23 2003 for wGui by<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.18 </small></address></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -