青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Cpper
C/C++高級工程師 Android高級軟件工程師 IT集成工程師 音頻工程師 熟悉c,c++,java,c#,py,js,asp等多種語言 程序猿
代碼如下:
class lmmsStyle : public QPlastiqueStyle
{
public:
    lmmsStyle();
    
virtual ~lmmsStyle() 
    {
    }

    
virtual QPalette standardPalette( void ) const;

    
virtual void drawComplexControl(
                ComplexControl control,
                
const QStyleOptionComplex * option,
                    QPainter 
*painter,
                        
const QWidget *widget ) const;
    
virtual void drawPrimitive( PrimitiveElement element,
                    
const QStyleOption *option,
                    QPainter 
*painter,
                    
const QWidget *widget = 0 ) const;

    
virtual int pixelMetric( PixelMetric metric,
                    
const QStyleOption * option = 0
                    
const QWidget * widget = 0 ) const;

} ;

實現為:
lmmsStyle::lmmsStyle():
QPlastiqueStyle()
{
    //QFile file("resources:style.css");
    //file.open( QIODevice::ReadOnly);
    //qApp->setStyleSheet(file.readAll());
    qApp->setPalette(standardPalette());
}
QPalette lmmsStyle::standardPalette(void)const
{
    QPalette pal = QPlastiqueStyle::standardPalette();
    pal.setColor( QPalette::Background, QColor( 172, 176, 188 ) );
    pal.setColor( QPalette::WindowText, QColor( 240, 240, 240 ) );
    pal.setColor( QPalette::Base, QColor( 128, 128, 128 ) );
    pal.setColor( QPalette::Text, QColor( 224, 224, 224 ) );
    pal.setColor( QPalette::Button, QColor( 172, 176, 188 ) );
    pal.setColor( QPalette::Shadow, QColor( 30, 30, 30 ) );
    pal.setColor( QPalette::ButtonText, QColor( 255, 255, 255 ) );
    pal.setColor( QPalette::BrightText, QColor( 20, 255, 20 ) );
    pal.setColor( QPalette::Highlight, QColor( 204, 204, 204 ) );
    pal.setColor( QPalette::HighlightedText, QColor( 0, 0, 0 ) );
    return(pal);
}
void lmmsStyle::drawComplexControl(ComplexControl control,
                                   const QStyleOptionComplex * option,
                                   QPainter *painter,
                                   const QWidget *widget ) const
{
	// fix broken titlebar styling on win32
	if( control == CC_TitleBar )
	{
		const QStyleOptionTitleBar * titleBar =
			qstyleoption_cast<const QStyleOptionTitleBar *>(option );
		if( titleBar )
		{
			QStyleOptionTitleBar so( *titleBar );
			so.palette = standardPalette();
			so.palette.setColor( QPalette::HighlightedText,
				( titleBar->titleBarState & State_Active ) ?
                                        QColor( 205, 205, 205 ) :
                                                QColor( 192, 212, 152 ) );
			so.palette.setColor( QPalette::Text,
                                                        QColor( 74, 74, 74 ) );
			QPlastiqueStyle::drawComplexControl( control, &so,
							painter, widget );
			return;
		}
	}
	QPlastiqueStyle::drawComplexControl( control, option, painter, widget );
}
void lmmsStyle::drawPrimitive( PrimitiveElement element, 
		const QStyleOption *option, QPainter *painter, 
		const QWidget *widget) const
{
	if( element == QStyle::PE_Frame ||
			element == QStyle::PE_FrameLineEdit ||
			element == QStyle::PE_PanelLineEdit )
	{
		const QRect rect = option->rect;
                QColor black = QColor( 10, 10, 10 );
		QColor shadow = option->palette.shadow().color();
		QColor highlight = option->palette.highlight().color();
		int a100 = 165;
		int a75 = static_cast<int>( a100 * .75 );
		int a50 = static_cast<int>( a100 * .6 );
		int a25 = static_cast<int>( a100 * .33 );
		QLine lines[4];
		QPoint points[4];
		// black inside lines
		// 50%
		black.setAlpha(a100);
		painter->setPen(QPen(black, 0));
		lines[0] = QLine(rect.left() + 2, rect.top() + 1,
					rect.right() - 2, rect.top() + 1);
		lines[1] = QLine(rect.left() + 2, rect.bottom() - 1,
					rect.right() - 2, rect.bottom() - 1);
		lines[2] = QLine(rect.left() + 1, rect.top() + 2,
					rect.left() + 1, rect.bottom() - 2);
		lines[3] = QLine(rect.right() - 1, rect.top() + 2,
					rect.right() - 1, rect.bottom() - 2);
		painter->drawLines(lines, 4);
		// black inside dots
		black.setAlpha(a50);
		painter->setPen(QPen(black, 0));
		points[0] = QPoint(rect.left() + 2, rect.top() + 2);
		points[1] = QPoint(rect.left() + 2, rect.bottom() - 2);
		points[2] = QPoint(rect.right() - 2, rect.top() + 2);
		points[3] = QPoint(rect.right() - 2, rect.bottom() - 2);
		painter->drawPoints(points, 4);
		// outside lines - shadow
		// 100%
		shadow.setAlpha(a75);
		painter->setPen(QPen(shadow, 0));
		lines[0] = QLine(rect.left() + 2, rect.top(),
						rect.right() - 2, rect.top());
		lines[1] = QLine(rect.left(), rect.top() + 2,
						rect.left(), rect.bottom() - 2);
		painter->drawLines(lines, 2);
		
		// outside corner dots - shadow
		// 75%
		shadow.setAlpha(a50);
		painter->setPen(QPen(shadow, 0));
		points[0] = QPoint(rect.left() + 1, rect.top() + 1);
		points[1] = QPoint(rect.right() - 1, rect.top() + 1);
		painter->drawPoints(points, 2);
		
		// outside end dots - shadow
		// 50%
		shadow.setAlpha(a25);
		painter->setPen(QPen(shadow, 0));
		points[0] = QPoint(rect.left() + 1, rect.top());
		points[1] = QPoint(rect.left(), rect.top() + 1);
		points[2] = QPoint(rect.right() - 1, rect.top());
		points[3] = QPoint(rect.left(), rect.bottom() - 1);
		painter->drawPoints(points, 4);
		
		// outside lines - highlight
		// 100%
		highlight.setAlpha(a75);
		painter->setPen(QPen(highlight, 0));
		lines[0] = QLine(rect.left() + 2, rect.bottom(),
					rect.right() - 2, rect.bottom());
		lines[1] = QLine(rect.right(), rect.top() + 2,
					rect.right(), rect.bottom() - 2);
		painter->drawLines(lines, 2);
		
		// outside corner dots - highlight
		// 75%
		highlight.setAlpha(a50);
		painter->setPen(QPen(highlight, 0));
		points[0] = QPoint(rect.left() + 1, rect.bottom() - 1);
		points[1] = QPoint(rect.right() - 1, rect.bottom() - 1);
		painter->drawPoints(points, 2);
		
		// outside end dots - highlight
		// 50%
		highlight.setAlpha(a25);
		painter->setPen(QPen(highlight, 0));
		points[0] = QPoint(rect.right() - 1, rect.bottom());
		points[1] = QPoint(rect.right(), rect.bottom() - 1);
		points[2] = QPoint(rect.left() + 1, rect.bottom());
		points[3] = QPoint(rect.right(), rect.top() + 1);
		painter->drawPoints(points, 4);
	}
	else 
	{
		QPlastiqueStyle::drawPrimitive( element, option, painter,
								widget );
	}
}
int lmmsStyle::pixelMetric( PixelMetric _metric, const QStyleOption * _option,
						const QWidget * _widget ) const
{
	switch( _metric )
	{
		case QStyle::PM_ButtonMargin:
			return 3;
		case QStyle::PM_ButtonIconSize:
			return 20;
		case QStyle::PM_ToolBarItemMargin:
			return 1;
		case QStyle::PM_ToolBarItemSpacing:
			return 2;
		case QStyle::PM_TitleBarHeight:
			return 24;
		default:
			return QPlastiqueStyle::pixelMetric( _metric, _option,
								_widget );
	}
}

posted on 2011-06-12 21:03 ccsdu2009 閱讀(1748) 評論(0)  編輯 收藏 引用 所屬分類: QT編程
 
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久在线视频在线| 久久高清福利视频| 亚洲国产乱码最新视频| 国产精品私人影院| 久久精品91| 女人天堂亚洲aⅴ在线观看| 久久精品国产久精国产爱| 国产精品高清免费在线观看| 亚洲精品国精品久久99热| 亚洲理伦在线| 欧美精品七区| 亚洲欧洲视频| 这里是久久伊人| 国产精品jizz在线观看美国 | 亚洲电影免费在线观看| 久久精品国产视频| 美女露胸一区二区三区| 亚洲国产精彩中文乱码av在线播放| 欧美一区日本一区韩国一区| 久久精品在线| 亚洲福利视频网站| 欧美激情片在线观看| 亚洲精品美女在线| 亚洲综合电影一区二区三区| 国产精品国产三级国产aⅴ9色| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 亚洲第一搞黄网站| 亚洲天堂成人在线视频| 在线亚洲一区| 国产精品国产a级| 亚洲午夜女主播在线直播| 亚洲天堂av在线免费| 欧美视频中文字幕| 亚洲私人影院| 久久精品国产久精国产一老狼| 国产美女精品视频免费观看| 午夜在线成人av| 久久久www| 伊人久久成人| 欧美sm视频| 亚洲人体大胆视频| 亚洲一区二区三区精品视频 | 亚洲欧美激情视频| 久久久精品国产一区二区三区 | 久久亚洲私人国产精品va媚药| 久久夜色精品亚洲噜噜国产mv| 极品少妇一区二区| 欧美大片专区| 亚洲深夜av| 久久免费高清| 亚洲精品一区二区三区99| 欧美福利视频| 亚洲视频播放| 久久夜色精品国产亚洲aⅴ| 亚洲国产欧洲综合997久久| 欧美啪啪成人vr| 亚洲一级二级| 欧美jizz19hd性欧美| 久久三级视频| 久久综合综合久久综合| 国内自拍一区| 麻豆91精品| 欧美大尺度在线| 亚洲人成在线播放| 午夜一区不卡| 欧美一区二区精品在线| 国产午夜精品福利| 午夜精品久久久久久久久久久久 | 国产美女一区二区| 美女黄网久久| 亚洲午夜激情网站| 亚洲日本中文字幕区| 国产精品久久久久久久久果冻传媒| 香蕉国产精品偷在线观看不卡| 亚洲高清久久网| 欧美一区二区三区在线播放| 亚洲国产午夜| 国产亚洲欧美在线| 99在线精品视频在线观看| 亚洲一区欧美激情| 在线看片成人| 国产精品任我爽爆在线播放| 久久综合网hezyo| 亚洲深夜福利网站| 亚洲风情亚aⅴ在线发布| 欧美一区二区三区日韩| 99精品99| 亚洲国产另类精品专区| 国产欧美韩国高清| 欧美日韩久久不卡| 久久亚洲欧美| 亚洲最新中文字幕| 欧美成年人视频| 久久精品视频99| 亚洲永久免费av| 99热免费精品| 亚洲人成免费| 亚洲成色777777在线观看影院| 国产欧美日本| 国产精品不卡在线| 欧美激情第4页| 另类成人小视频在线| 久久se精品一区二区| 午夜免费久久久久| 亚洲一区二区在线视频| 一区二区三区国产在线| 最新精品在线| 欧美激情视频一区二区三区不卡| 久久精品一区蜜桃臀影院| 亚洲欧美日韩国产综合在线| 一本色道久久加勒比88综合| 亚洲精品视频在线播放| 91久久精品久久国产性色也91| 国产精品毛片a∨一区二区三区|国 | 一区二区三区四区蜜桃| 亚洲精品黄网在线观看| 亚洲国产婷婷香蕉久久久久久| 在线播放日韩欧美| 国产主播一区二区三区四区| 国产日韩在线看| 国产午夜一区二区三区| 国产亚洲欧美日韩一区二区| 国产亚洲欧洲一区高清在线观看| 国产精品久久午夜| 国产乱人伦精品一区二区| 国产一区二区中文| 欧美黄色精品| 欧美成人性生活| 欧美大片免费观看| 欧美国产免费| 亚洲黑丝一区二区| 亚洲精品乱码久久久久久黑人| 亚洲欧洲日产国产综合网| 亚洲精品婷婷| 中文国产成人精品| 亚洲综合三区| 久久精品亚洲一区二区三区浴池| 久久久久国色av免费看影院| 久久一区二区三区超碰国产精品| 久久亚洲精品欧美| 欧美激情第3页| 欧美午夜视频一区二区| 国产欧美va欧美va香蕉在| 一区在线视频观看| 91久久精品国产91久久| 亚洲一区二区在线播放| 制服丝袜激情欧洲亚洲| 亚洲精品一区二区三区在线观看 | 99在线|亚洲一区二区| 亚洲欧美视频| 老司机成人在线视频| 欧美日韩国产成人在线| 国产免费成人| 91久久夜色精品国产九色| 亚洲一区二区三区激情| 亚洲免费视频观看| 久久免费99精品久久久久久| 欧美激情精品久久久久久久变态| 亚洲精品日韩在线观看| 亚洲欧美激情四射在线日| 玖玖国产精品视频| 免费的成人av| 欧美日韩国产综合久久| 国产日产欧产精品推荐色| 最新成人在线| 欧美在线中文字幕| 亚洲高清久久网| 亚洲欧美日韩一区二区| 欧美成人精精品一区二区频| 国产精品你懂得| 亚洲国产精品一区| 午夜精品免费| 亚洲国产高清在线| 午夜在线一区| 欧美日韩一本到| 欧美视频在线视频| 欧美精品久久久久久久久老牛影院| 国产精品永久在线| 日韩午夜视频在线观看| 久久久精品动漫| 一本大道久久a久久精品综合| 久久久一区二区| 国产农村妇女精品一区二区| 99这里只有精品| 欧美大片免费| 久久aⅴ国产欧美74aaa| 欧美精品激情blacked18| 欧美激情91| 国产精品多人| 亚洲人成艺术| 蜜桃精品久久久久久久免费影院| 国产精品99久久久久久久vr| 免费日韩视频| 国产一区二区三区在线观看免费视频 | 久久久国产91| 亚洲一区综合| 欧美色偷偷大香| 99v久久综合狠狠综合久久| 老色鬼精品视频在线观看播放| 亚洲免费伊人电影在线观看av|