亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? vscrollbar.cpp

?? SimpleGraphicOperatingSystem 32位圖形化操作系統 多進程 支持FAT32 詳見www.sgos.net.cn
?? CPP
字號:
#include <osdef.h>//WM_**
#include <System.h>
#include <Api.h>	//Sgos api

namespace System{

	class ButtonUp: public Button{
	private:
		VScrollBar* parent;
	public:
		ButtonUp(VScrollBar* p):Button(p, string(" "), 0)
		{
			parent = p;
		}
		virtual int OnMouseDown( int button, Point* p ){
			parent->SetValue2( parent->Value()-parent->MinStep() );
			Button::OnMouseDown( button, p );
		}
		virtual int DrawLabel(int type){
			//畫個箭頭
			int w = BaseWindow::Width();
			int h = BaseWindow::Height();
			Bitmap::Line( bitmap, w/4, h*3/4, w/2, h/4, Bitmap::BLACK );
			Bitmap::Line( bitmap, w/2, h/4, w*3/4, h*3/4, Bitmap::BLACK );
			Bitmap::Line( bitmap, w/4, h*3/4, w*3/4, h*3/4, Bitmap::BLACK );
			Label::DrawLabel(type);
		}
	};
	class ButtonDown: public Button{
	private:
		VScrollBar* parent;
	public:
		ButtonDown(VScrollBar* p):Button(p, string(" "), 0)
		{
			parent = p;
		}
		virtual int OnMouseDown( int button, Point* p ){
			parent->SetValue2( parent->Value()+parent->MinStep() );
			Button::OnMouseDown( button, p );
		}
		virtual int DrawLabel(int type){
			//畫個箭頭
			int w = BaseWindow::Width();
			int h = BaseWindow::Height();
			Bitmap::Line( bitmap, w/4, h/4, w/2, h*3/4, Bitmap::BLACK );
			Bitmap::Line( bitmap, w/2, h*3/4, w*3/4, h/4, Bitmap::BLACK );
			Bitmap::Line( bitmap,  w/4, h/4, w*3/4, h/4, Bitmap::BLACK );
			Label::DrawLabel(type);
		}
	};
	class ButtonMid: public Button{
	private:
		VScrollBar* parent;
		int bCatched;
		int oldWinY, oldWinX, oldMouseRelY;
	public:
		ButtonMid(VScrollBar* p):Button(p, string(" "), 0)
		{
			bCatched = false;
			parent = p;
		}
		virtual int OnMouseDown( int button, Point* p ){
			Point gM;
			Rect r;
			Mouse::GetMousePoint(&gM);	//we get the global mouse position.
			GetRect( r );
			oldMouseRelY = gM.y;
			oldWinY = r.top;
			oldWinX = r.left;
			bCatched = true;
			Button::OnMouseDown( button, p );
		}
		virtual int OnMouseUp( int button, Point* p ){
			bCatched = false;
			Button::OnMouseUp( button, p );
		}
		virtual int OnMouseLeave( int button ){
			bCatched = false;
			Button::OnMouseLeave( button );
		}
		virtual int OnMouseMove( Point* p ){
			if( bCatched ){
				short y;
				Point gM;
				Mouse::GetMousePoint(&gM);	//we get the global mouse position.
				y = gM.y-oldMouseRelY + oldWinY;
				//DPRINT("x=%d y=%d mx=%d my=%d newx=%d newy=%d", x, y, mx, my, x+winX, y+winY);
				int upup = parent->GetUpButton()->Height(),
					downdown = ((BaseWindow*)parent)->Height()-BaseWindow::Height()-parent->GetDownButton()->Height();
				int y2;
				if( y<upup )
					y2=upup;
				else if ( y>downdown )
					y2=downdown;
				else
					y2=y;
				//Move( oldWinX, y2, 0, 0 );
				if(downdown-upup>0){
					int t=(parent->Max()-parent->Min())*(y2-upup)/(downdown-upup);
					parent->SetValue2( t );
				}
				Button::OnMouseMove( p );
			}
		}
	};

	int VScrollBar::OnSize( int w, int h ){
		Width = w;
		Height = h;

		if( w<btnMid->Width() ){
			SetSize( btnUp->Width(), h );
			return -1;
		}
		if( h>=btnUp->Height()+btnDown->Height()+btnMid->Height() )
		{
			btnUp->Move(0,0,w,btnUp->Height());
			btnDown->Move(0,Height-btnDown->Height(),w,btnUp->Height());
			btnMid->Move(0,btnUp->Height(),w,btnUp->Height());
		}else if( h>=btnUp->Height()+btnDown->Height() ){
			btnUp->Move(0,0,w,btnUp->Height());
			btnDown->Move(0,Height-btnDown->Height(),w,btnUp->Height());
		}else{
			SetSize( w, btnUp->Height()+btnDown->Height() );
			return -1;
		}
		BaseWindow::OnSize(w,h);
		return 0;
	}
	VScrollBar::~VScrollBar(){
		delete btnUp;
		delete btnDown;
		delete btnMid;
	}

	VScrollBar::VScrollBar( BaseWindow* form, int style ):
		BaseWindow( form, string("VScroll Bar"), 0 )
	{
		type = TypeVScrollBar;
		bitmap->BackColor = Bitmap::LIGHTGRAY;
		btnUp = new ButtonUp(this);
		btnDown = new ButtonDown(this);
		btnMid = new ButtonMid(this);
		btnUp->Show();
		btnDown->Show();
		btnMid->Show();
		this->style = style;
		Width = btnUp->Width();
		Height = BaseWindow::Height();
		SetSize( Width, Height );
		Set( 0, 100, 1, 20 );
	}

	int VScrollBar::DrawVScrollBar(int type){

		Bitmap::RectFill( bitmap, 0, 0, Width-1, Height-1, Bitmap::LIGHTGRAY );
		btnUp->OnPaint();
		btnDown->OnPaint();
		btnMid->OnPaint();
		Refresh();
	}

	int VScrollBar::OnPaint(){
		DrawVScrollBar(0);
		BaseWindow::OnPaint();
	}

	int VScrollBar::OnMouseDown( int button, Point* p ){
		int upup = btnUp->Height(),
			downdown = Height-btnDown->Height(),
			up = btnMid->Top(),
			down = btnMid->Top()+btnMid->Height();
		if( p->y>upup&&p->y<up )
		{
			SetValue2(value-maxStep);
		}else if(p->y>down&&p->y<downdown){
			SetValue2(value+maxStep);
		}
	}

	int VScrollBar::OnChange(int v){
	}
	int VScrollBar::Max()
	{
		return max;
	}

	int VScrollBar::SetValue(int v){
		if( v<min )v=min;
		if( v>max )v=max;
		value = v;
		int t = (v-min)*(Height-btnUp->Height()-btnDown->Height()-btnMid->Height())/(max-min);
		btnMid->Move( 0, t+btnUp->Height(), 0, 0 );
		return true;
	}

	int VScrollBar::SetValue2(int v){
		if( v<min )v=min;
		if( v>max )v=max;
		SetValue(v);
		OnChange(v);
	}

	int VScrollBar::Set( int m_min, int m_max, int m_minStep, int m_maxStep ){
		min = m_min;
		max = m_max;
		minStep = m_minStep;
		maxStep = m_maxStep;
		value = min;
		if( m_max<=m_min ){
			max=1;
			btnMid->Move( 0, btnUp->Height(), btnMid->Width(), (Height-btnUp->Height()-btnDown->Height()) );
		}else{
			int t = maxStep*(Height-btnUp->Height()-btnDown->Height())/(max-min+maxStep);
			if( t<1 ) t = 2;
			btnMid->Move( 0, btnUp->Height(), btnMid->Width(), t );
		}
		Refresh();
		return true;
	}

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国产一区二区三区四区四| 极品少妇xxxx精品少妇| 91精品福利在线一区二区三区| 日韩伦理电影网| 91精品欧美综合在线观看最新| 一区二区三区视频在线看| 中文字幕制服丝袜一区二区三区 | 日本一区二区三区电影| 欧美综合一区二区三区| 欧美一区二区三区影视| av一区二区三区黑人| 五月天亚洲精品| 久久精品国产成人一区二区三区| 欧美精品高清视频| 99久久婷婷国产综合精品电影| 欧美日韩国产免费一区二区 | 国产精品免费视频一区| 樱桃国产成人精品视频| 午夜天堂影视香蕉久久| 久久精工是国产品牌吗| 欧美成人欧美edvon| 亚洲男同性恋视频| 欧美精品久久一区| 亚洲欧洲国产日本综合| 日韩专区在线视频| 欧美性欧美巨大黑白大战| 国产日韩综合av| 免费观看成人av| 久久精品一区二区三区不卡牛牛| 26uuu精品一区二区在线观看| 亚洲国产欧美日韩另类综合| 一本久久综合亚洲鲁鲁五月天| 久久综合久久久久88| 蜜臀精品久久久久久蜜臀| 欧美嫩在线观看| 国产suv精品一区二区883| 亚洲第一电影网| 欧美性猛交xxxx乱大交退制版| 久久99这里只有精品| 日韩午夜激情av| 国产一区二区在线影院| 欧美精品在线观看播放| 日韩美女啊v在线免费观看| 国产一区二区精品久久99| 日韩小视频在线观看专区| 美女一区二区久久| 中文字幕一区在线观看| 色呦呦国产精品| 免费观看久久久4p| 国产精品久久久久影院亚瑟| 欧美性猛交xxxx黑人交| 捆绑调教一区二区三区| 中文字幕av一区二区三区| 日本精品视频一区二区| 免费观看日韩av| 亚洲欧美成aⅴ人在线观看| 日韩一卡二卡三卡国产欧美| 日韩一区二区三区av| 日本vs亚洲vs韩国一区三区| 一区二区免费视频| 亚洲裸体在线观看| 夜夜嗨av一区二区三区网页 | 亚洲精品国产精品乱码不99 | 91麻豆国产在线观看| 喷白浆一区二区| 亚洲成a人v欧美综合天堂| 国产精品毛片无遮挡高清| 国产日韩欧美一区二区三区综合| 欧美亚洲高清一区| 91麻豆国产香蕉久久精品| 波多野洁衣一区| 成人国产精品免费| 欧美日本高清视频在线观看| 日韩精品一区二区三区在线观看 | 亚洲国产高清在线| 国产一区二区三区在线观看精品| 日日摸夜夜添夜夜添亚洲女人| 天堂蜜桃一区二区三区| 一区二区三区日韩精品视频| 国产精品欧美综合在线| 中文字幕av一区二区三区| 国产精品美女久久久久久2018| 久久久蜜臀国产一区二区| 国产无遮挡一区二区三区毛片日本| 欧美一区二区三区人| 欧美一区二区三区在线看| 日韩欧美国产系列| 国产精品理论在线观看| 亚洲精品中文字幕乱码三区| 午夜成人免费电影| 狠狠色狠狠色综合系列| 成人h动漫精品| 欧美色网一区二区| 精品免费国产二区三区| 国产精品妹子av| 青娱乐精品视频在线| 国产精品1区2区3区| 色婷婷av一区二区三区软件| 日韩欧美中文字幕公布| 国产精品不卡一区二区三区| 日本女优在线视频一区二区| 经典一区二区三区| 一本大道久久精品懂色aⅴ| 日韩欧美中文一区二区| 成人免费一区二区三区在线观看| 午夜精品福利一区二区三区蜜桃| 无码av免费一区二区三区试看| 国产毛片精品一区| 欧美久久一区二区| 一区二区在线电影| 成人免费看的视频| 国产亚洲女人久久久久毛片| 丝瓜av网站精品一区二区 | 欧美国产欧美亚州国产日韩mv天天看完整| 亚洲一区二区偷拍精品| 欧美三级韩国三级日本三斤| 国产欧美日韩亚州综合| 国产精品久久久久久妇女6080 | 久久日韩精品一区二区五区| 国产资源在线一区| 国产欧美1区2区3区| 不卡欧美aaaaa| 夜夜嗨av一区二区三区中文字幕| 在线看国产日韩| 五月激情丁香一区二区三区| 欧美一区二区在线看| 老司机午夜精品99久久| 久久精品欧美一区二区三区不卡| 风间由美一区二区三区在线观看 | 免费视频一区二区| 欧美一区二区视频观看视频| 精品伊人久久久久7777人| 精品久久免费看| 不卡视频免费播放| 亚洲宅男天堂在线观看无病毒| 制服.丝袜.亚洲.另类.中文| 国产不卡一区视频| 伊人色综合久久天天| 精品人伦一区二区色婷婷| 99精品在线免费| 国产成人精品免费在线| 日本vs亚洲vs韩国一区三区二区 | 欧美日韩一区二区三区四区五区 | 99久久国产综合色|国产精品| 亚洲一区二区五区| 久久久久久久综合色一本| 91网站黄www| 精品一区二区国语对白| 亚洲精品一卡二卡| 欧美成人福利视频| 欧美日韩成人综合| av动漫一区二区| 久久国产精品72免费观看| 亚洲欧美国产毛片在线| 国产亚洲精品aa| 在线成人免费视频| 在线观看免费一区| 99久久亚洲一区二区三区青草| 久久精品国产精品亚洲红杏 | 99视频在线精品| 国产成人av电影在线| 精品一区二区av| 午夜影院在线观看欧美| 亚洲精品视频在线看| 国产精品久久久久久久久免费樱桃| 日韩精品中文字幕在线不卡尤物| 色综合久久综合网97色综合 | 国产精品私人影院| 国产婷婷色一区二区三区四区| 国产日产欧美一区| 国产日产精品1区| 日本一区二区在线不卡| 国产精品午夜免费| 欧美极品少妇xxxxⅹ高跟鞋| 欧美—级在线免费片| 国产精品毛片a∨一区二区三区| 国产精品美女一区二区在线观看| 国产午夜亚洲精品不卡 | 国产成人综合在线观看| 国产成人免费xxxxxxxx| 成人免费视频免费观看| 91在线小视频| 欧美一级高清片| 欧美日本一区二区三区| 日韩欧美亚洲国产精品字幕久久久| 26uuu另类欧美| 国产日韩欧美在线一区| 亚洲成人av免费| 国产呦萝稀缺另类资源| 色综合久久久网| 欧美一区二区女人| 中文字幕在线免费不卡| 久久超碰97人人做人人爱| 99精品视频在线观看免费| 777亚洲妇女| 国产精品短视频| 激情五月激情综合网| 91丨porny丨国产入口| 日韩欧美二区三区| 亚洲在线视频网站|