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

📄 qwt__dial_8cpp-source.html

📁 QWT5.01用于Qt开发的二维图形库程序
💻 HTML
📖 第 1 页 / 共 5 页
字号:
<a name="l00179"></a>00179 <span class="preprocessor"></span>    setFocusPolicy(TabFocus);<a name="l00180"></a>00180 <a name="l00181"></a>00181     QPalette p = palette();<a name="l00182"></a>00182     <span class="keywordflow">for</span> ( <span class="keywordtype">int</span> i = 0; i &lt; QPalette::NColorGroups; i++ )<a name="l00183"></a>00183     {<a name="l00184"></a>00184         <span class="keyword">const</span> QPalette::ColorGroup cg = (QPalette::ColorGroup)i;<a name="l00185"></a>00185 <a name="l00186"></a>00186         <span class="comment">// Base: background color of the circle inside the frame.</span><a name="l00187"></a>00187         <span class="comment">// Foreground: background color of the circle inside the scale</span><a name="l00188"></a>00188 <a name="l00189"></a>00189 <span class="preprocessor">#if QT_VERSION &lt; 0x040000</span><a name="l00190"></a>00190 <span class="preprocessor"></span>        p.setColor(cg, QColorGroup::Foreground, <a name="l00191"></a>00191             p.color(cg, QColorGroup::Base));<a name="l00192"></a>00192 <span class="preprocessor">#else</span><a name="l00193"></a>00193 <span class="preprocessor"></span>        p.setColor(cg, QPalette::Foreground, <a name="l00194"></a>00194             p.color(cg, QPalette::Base));<a name="l00195"></a>00195 <span class="preprocessor">#endif</span><a name="l00196"></a>00196 <span class="preprocessor"></span>    }<a name="l00197"></a>00197     setPalette(p);<a name="l00198"></a>00198 <a name="l00199"></a>00199     d_data-&gt;scaleDraw = <span class="keyword">new</span> <a class="code" href="class_qwt_dial_scale_draw.html">QwtDialScaleDraw</a>(<span class="keyword">this</span>);<a name="l00200"></a>00200     d_data-&gt;scaleDraw-&gt;setRadius(0);<a name="l00201"></a>00201 <a name="l00202"></a>00202     setScaleArc(0.0, 360.0); <span class="comment">// scale as a full circle</span><a name="l00203"></a>00203     setRange(0.0, 360.0, 1.0, 10); <span class="comment">// degrees as deafult</span><a name="l00204"></a>00204 }<a name="l00205"></a>00205 <a name="l00207"></a><a class="code" href="class_qwt_dial.html#16cd1e45a78890c6c5f6e9c07b0180c7">00207</a> <a class="code" href="class_qwt_dial.html#16cd1e45a78890c6c5f6e9c07b0180c7">QwtDial::~QwtDial</a>() <a name="l00208"></a>00208 {<a name="l00209"></a>00209     <span class="keyword">delete</span> d_data;<a name="l00210"></a>00210 }<a name="l00211"></a>00211 <a name="l00220"></a><a class="code" href="class_qwt_dial.html#e8fde2f662ce5a484b3a27f64a45ef92">00220</a> <span class="keywordtype">void</span> <a class="code" href="class_qwt_dial.html#e8fde2f662ce5a484b3a27f64a45ef92">QwtDial::showBackground</a>(<span class="keywordtype">bool</span> show)<a name="l00221"></a>00221 {<a name="l00222"></a>00222     <span class="keywordflow">if</span> ( d_data-&gt;visibleBackground != show )<a name="l00223"></a>00223     {<a name="l00224"></a>00224         d_data-&gt;visibleBackground = show;<a name="l00225"></a>00225         <a class="code" href="class_qwt_dial.html#50d2c6b38eb9efc6d495249eb76d9fc4">updateMask</a>();<a name="l00226"></a>00226     }<a name="l00227"></a>00227 }<a name="l00228"></a>00228 <a name="l00234"></a><a class="code" href="class_qwt_dial.html#7b668a8819d9bf5e0894676779dc58ea">00234</a> <span class="keywordtype">bool</span> <a class="code" href="class_qwt_dial.html#7b668a8819d9bf5e0894676779dc58ea">QwtDial::hasVisibleBackground</a>()<span class="keyword"> const </span><a name="l00235"></a>00235 <span class="keyword"></span>{ <a name="l00236"></a>00236     <span class="keywordflow">return</span> d_data-&gt;visibleBackground; <a name="l00237"></a>00237 }<a name="l00238"></a>00238 <a name="l00244"></a><a class="code" href="class_qwt_dial.html#272e17e53586a149df4dca437d5f9494">00244</a> <span class="keywordtype">void</span> <a class="code" href="class_qwt_dial.html#272e17e53586a149df4dca437d5f9494">QwtDial::setFrameShadow</a>(<a class="code" href="class_qwt_dial.html#7472124cb120352e8538430ab48c2386">Shadow</a> shadow)<a name="l00245"></a>00245 {<a name="l00246"></a>00246     <span class="keywordflow">if</span> ( shadow != d_data-&gt;frameShadow )<a name="l00247"></a>00247     {<a name="l00248"></a>00248         d_data-&gt;frameShadow = shadow;<a name="l00249"></a>00249         <span class="keywordflow">if</span> ( <a class="code" href="class_qwt_dial.html#fb583edf70364eb562bf84686b60a9b7">lineWidth</a>() &gt; 0 )<a name="l00250"></a>00250             update();<a name="l00251"></a>00251     }<a name="l00252"></a>00252 }<a name="l00253"></a>00253 <a name="l00258"></a><a class="code" href="class_qwt_dial.html#49e37bd4da2ed2b846bba75c79a04fbc">00258</a> <a class="code" href="class_qwt_dial.html#7472124cb120352e8538430ab48c2386">QwtDial::Shadow</a> <a class="code" href="class_qwt_dial.html#49e37bd4da2ed2b846bba75c79a04fbc">QwtDial::frameShadow</a>()<span class="keyword"> const </span><a name="l00259"></a>00259 <span class="keyword"></span>{ <a name="l00260"></a>00260     <span class="keywordflow">return</span> d_data-&gt;frameShadow; <a name="l00261"></a>00261 }<a name="l00262"></a>00262 <a name="l00269"></a><a class="code" href="class_qwt_dial.html#7946ca363a97fd28de4993a5caa54507">00269</a> <span class="keywordtype">void</span> <a class="code" href="class_qwt_dial.html#7946ca363a97fd28de4993a5caa54507">QwtDial::setLineWidth</a>(<span class="keywordtype">int</span> lineWidth)<a name="l00270"></a>00270 {<a name="l00271"></a>00271     <span class="keywordflow">if</span> ( lineWidth &lt; 0 )<a name="l00272"></a>00272         lineWidth = 0;<a name="l00273"></a>00273 <a name="l00274"></a>00274     <span class="keywordflow">if</span> ( d_data-&gt;lineWidth != lineWidth )<a name="l00275"></a>00275     {<a name="l00276"></a>00276         d_data-&gt;lineWidth = lineWidth;<a name="l00277"></a>00277         update();<a name="l00278"></a>00278     }<a name="l00279"></a>00279 }<a name="l00280"></a>00280 <a name="l00285"></a><a class="code" href="class_qwt_dial.html#fb583edf70364eb562bf84686b60a9b7">00285</a> <span class="keywordtype">int</span> <a class="code" href="class_qwt_dial.html#fb583edf70364eb562bf84686b60a9b7">QwtDial::lineWidth</a>()<span class="keyword"> const </span><a name="l00286"></a>00286 <span class="keyword"></span>{ <a name="l00287"></a>00287     <span class="keywordflow">return</span> d_data-&gt;lineWidth; <a name="l00288"></a>00288 }<a name="l00289"></a>00289 <a name="l00294"></a><a class="code" href="class_qwt_dial.html#3e3b060c08497cf2a20a731b080fc7c3">00294</a> QRect <a class="code" href="class_qwt_dial.html#3e3b060c08497cf2a20a731b080fc7c3">QwtDial::contentsRect</a>()<span class="keyword"> const</span><a name="l00295"></a>00295 <span class="keyword"></span>{<a name="l00296"></a>00296     <span class="keyword">const</span> <span class="keywordtype">int</span> lw = <a class="code" href="class_qwt_dial.html#fb583edf70364eb562bf84686b60a9b7">lineWidth</a>();<a name="l00297"></a>00297 <a name="l00298"></a>00298     QRect r = <a class="code" href="class_qwt_dial.html#0d52d45d3a693e66d5799e285efdd34d">boundingRect</a>();<a name="l00299"></a>00299     <span class="keywordflow">if</span> ( lw &gt; 0 )<a name="l00300"></a>00300     {<a name="l00301"></a>00301         r.setRect(r.x() + lw, r.y() + lw, <a name="l00302"></a>00302             r.width() - 2 * lw, r.height() - 2 * lw);<a name="l00303"></a>00303     }<a name="l00304"></a>00304     <span class="keywordflow">return</span> r;<a name="l00305"></a>00305 }<a name="l00306"></a>00306 <a name="l00311"></a><a class="code" href="class_qwt_dial.html#0d52d45d3a693e66d5799e285efdd34d">00311</a> QRect <a class="code" href="class_qwt_dial.html#0d52d45d3a693e66d5799e285efdd34d">QwtDial::boundingRect</a>()<span class="keyword"> const</span><a name="l00312"></a>00312 <span class="keyword"></span>{<a name="l00313"></a>00313     <span class="keyword">const</span> <span class="keywordtype">int</span> radius = qwtMin(width(), height()) / 2;<a name="l00314"></a>00314 <a name="l00315"></a>00315     QRect r(0, 0, 2 * radius, 2 * radius);<a name="l00316"></a>00316     r.moveCenter(rect().center());<a name="l00317"></a>00317     <span class="keywordflow">return</span> r;<a name="l00318"></a>00318 }<a name="l00319"></a>00319 <a name="l00324"></a><a class="code" href="class_qwt_dial.html#0986903d2c6bcbf3cc36dfb094f59d47">00324</a> QRect <a class="code" href="class_qwt_dial.html#0986903d2c6bcbf3cc36dfb094f59d47">QwtDial::scaleContentsRect</a>()<span class="keyword"> const</span><a name="l00325"></a>00325 <span class="keyword"></span>{<a name="l00326"></a>00326 <span class="preprocessor">#if QT_VERSION &lt; 0x040000</span><a name="l00327"></a>00327 <span class="preprocessor"></span>    <span class="keyword">const</span> QPen scalePen(colorGroup().text(), 0, Qt::NoPen);<a name="l00328"></a>00328 <span class="preprocessor">#else</span><a name="l00329"></a>00329 <span class="preprocessor"></span>    <span class="keyword">const</span> QPen scalePen(palette().text(), 0, Qt::NoPen);<a name="l00330"></a>00330 <span class="preprocessor">#endif</span><a name="l00331"></a>00331 <span class="preprocessor"></span><a name="l00332"></a>00332     <span class="keywordtype">int</span> scaleDist = 0;<a name="l00333"></a>00333     <span class="keywordflow">if</span> ( d_data-&gt;scaleDraw )<a name="l00334"></a>00334     {<a name="l00335"></a>00335         scaleDist = d_data-&gt;scaleDraw-&gt;extent(scalePen, font());<a name="l00336"></a>00336         scaleDist++; <span class="comment">// margin</span><a name="l00337"></a>00337     }<a name="l00338"></a>00338 <a name="l00339"></a>00339     <span class="keyword">const</span> QRect rect = <a class="code" href="class_qwt_dial.html#3e3b060c08497cf2a20a731b080fc7c3">contentsRect</a>();<a name="l00340"></a>00340     <span class="keywordflow">return</span> QRect(rect.x() + scaleDist, rect.y() + scaleDist,<a name="l00341"></a>00341         rect.width() - 2 * scaleDist, rect.height() - 2 * scaleDist);<a name="l00342"></a>00342 }<a name="l00343"></a>00343 <a name="l00359"></a><a class="code" href="class_qwt_dial.html#6b070ba6251fa40bbd876551413c5639">00359</a> <span class="keywordtype">void</span> <a class="code" href="class_qwt_dial.html#6b070ba6251fa40bbd876551413c5639">QwtDial::setMode</a>(<a class="code" href="class_qwt_dial.html#7376f53193014b91643350e6e6bc85ad">Mode</a> mode)<a name="l00360"></a>00360 {   <a name="l00361"></a>00361     <span class="keywordflow">if</span> ( mode != d_data-&gt;mode )<a name="l00362"></a>00362     {<a name="l00363"></a>00363         d_data-&gt;mode = mode;<a name="l00364"></a>00364         update(); <a name="l00365"></a>00365     }<a name="l00366"></a>00366 }       <a name="l00367"></a>00367 <a name="l00382"></a><a class="code" href="class_qwt_dial.html#fd95a47735c0cfe963dfacd1a6a36a6f">00382</a> <a class="code" href="class_qwt_dial.html#7376f53193014b91643350e6e6bc85ad">QwtDial::Mode</a> <a class="code" href="class_qwt_dial.html#fd95a47735c0cfe963dfacd1a6a36a6f">QwtDial::mode</a>()<span class="keyword"> const</span><a name="l00383"></a>00383 <span class="keyword"></span>{<a name="l00384"></a>00384     <span class="keywordflow">return</span> d_data-&gt;mode;<a name="l00385"></a>00385 }<a name="l00386"></a>00386 <a name="l00397"></a><a class="code" href="class_qwt_dial.html#8d2cfa17acf266fd0273f0f477895499">00397</a> <span class="keywordtype">void</span> <a class="code" href="class_qwt_dial.html#8d2cfa17acf266fd0273f0f477895499">QwtDial::setWrapping</a>(<span class="keywordtype">bool</span> wrapping)<a name="l00398"></a>00398 {<a name="l00399"></a>00399     <a class="code" href="class_qwt_double_range.html#95fa6a4e44fc47726d939155bb6f6f1f">setPeriodic</a>(wrapping);<a name="l00400"></a>00400 } <a name="l00401"></a>00401 <a name="l00410"></a><a class="code" href="class_qwt_dial.html#13936ddfd1e381267b2ccafa4806d0fa">00410</a> <span class="keywordtype">bool</span> <a class="code" href="class_qwt_dial.html#13936ddfd1e381267b2ccafa4806d0fa">QwtDial::wrapping</a>()<span class="keyword"> const</span><a name="l00411"></a>00411 <span class="keyword"></span>{<a name="l00412"></a>00412     <span class="keywordflow">return</span> <a class="code" href="class_qwt_double_range.html#d1efbcbf29dbc74f3f378292b76b007b">periodic</a>();<a name="l00413"></a>00413 }<a name="l00414"></a>00414 <a name="l00419"></a><a class="code" href="class_qwt_dial.html#852f1dfa3b96920492600217902f7ce6">00419</a> <span class="keywordtype">void</span> <a class="code" href="class_qwt_dial.html#852f1dfa3b96920492600217902f7ce6">QwtDial::resizeEvent</a>(QResizeEvent *e)<a name="l00420"></a>00420 {<a name="l00421"></a>00421     QWidget::resizeEvent(e);<a name="l00422"></a>00422 <a name="l00423"></a>00423     <span class="keywordflow">if</span> ( !<a class="code" href="class_qwt_dial.html#7b668a8819d9bf5e0894676779dc58ea">hasVisibleBackground</a>() )<a name="l00424"></a>00424         <a class="code" href="class_qwt_dial.html#50d2c6b38eb9efc6d495249eb76d9fc4">updateMask</a>();

⌨️ 快捷键说明

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