Пример #1
0
void MyTestDialog::DrawPicToHDC(cv::Mat& img, UINT ID)
{
	//清空
	CStatic* pStatic = (CStatic*)GetDlgItem(ID);
	pStatic->SetBitmap(NULL);
	CRect rect;
	pStatic->GetClientRect(&rect);
	pStatic->GetDC()->FillSolidRect(rect.left ,rect.top ,rect.Width(),rect.Height(), RGB(240, 240, 240));
	////

	CDC* pDC = GetDlgItem(ID)->GetDC();
	HDC hDC = pDC->GetSafeHdc();

	//调整大小
	////////
	float widthRatio = (float)rect.Width() / img.cols;
	float heightRatio = (float)rect.Height() / img.rows;
	float resRatio = widthRatio < heightRatio ? widthRatio: heightRatio;
	int resWidth = img.cols * resRatio;
	int resHeight = img.rows * resRatio;
	cv::resize(img, img, cv::Size(resWidth, resHeight));
	CRect drawRect;
	drawRect.SetRect(rect.TopLeft().x, rect.TopLeft().y, rect.TopLeft().x + img.cols - 1, rect.TopLeft().y + img.rows - 1);
	///////
	IplImage* tmpimg = &img.operator IplImage();
	CvvImage iimg;
	iimg.CopyOf(tmpimg);
	iimg.DrawToHDC(hDC, &drawRect);
	ReleaseDC(pDC);
	iimg.Destroy();
}
Пример #2
0
void CCaptchaDialog::OnShowWindow(BOOL bShow, UINT nStatus) 
{
	CDialog::OnShowWindow(bShow, nStatus);
	
    if ( bShow ) {
        if ( m_captchaImageURL.GetLength() > 0 ) {
            CImage  img;

            m_bitmap = img.HttpOpen( m_captchaImageURL, m_cookie );
            if ( m_bitmap ) {
                CStatic *sp;
                sp = (CStatic *)GetDlgItem( IDC_BITMAP_CAPTCHA );
                sp->SetBitmap( m_bitmap );
            }
        }

        if ( m_mode == CAP_POST_COMMENT ) {
            CEdit   *ep = (CEdit *)GetDlgItem( IDC_EDIT_TITLE );
            ep->SetReadOnly( TRUE );

            m_topicList.EnableWindow( FALSE );
            int location = m_topicList.FindString( -1, m_topic );
            if ( location != CB_ERR )
                m_topicList.SetCurSel( location );
            else {
                m_topicList.AddString( m_topic );
                location = m_topicList.FindString( -1, m_topic );
                if ( location != CB_ERR )
                    m_topicList.SetCurSel( location );
            }
        }
    }
}
Пример #3
0
void CDAB_PLAYERDlg::OnStnClickedAudio()
{
	// TODO: Add your control notification handler code here

	HBITMAP m_hBitmap;
	CStatic* MenuAudio = (CStatic *)GetDlgItem(PIC_AUDIO);
	CStatic* MenuVideo = (CStatic *)GetDlgItem(PIC_VIDEO);

	//视频按钮暗
	m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_MENU_VIDEO));
	MenuVideo->SetBitmap(m_hBitmap);

	//音频按钮亮
	m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_MENU_AUDIO2));
	MenuAudio->SetBitmap(m_hBitmap);

	if (AUDIO == currentUnit)
	{
		return;
	}
	CStatic* staticId = (CStatic *)GetDlgItem(IDC_CCTV2);

	if (currentProm == SGJT)
	{
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_ENEWS2));
		staticId->SetBitmap(m_hBitmap);
		staticId = (CStatic *)GetDlgItem(IDC_DYCJ2);
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_SGJT1));
		staticId->SetBitmap(m_hBitmap);
	}
	//当前节目为SGJT,点亮SGJT图标

	else if(currentProm == ENEWS)
	{
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_ENEWS1));
		staticId->SetBitmap(m_hBitmap);
		staticId = (CStatic *)GetDlgItem(IDC_DYCJ2);
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_SGJT2));
		staticId->SetBitmap(m_hBitmap);
	}
	//当前节目为ENEWS,点亮ENEWS图标

	else
	{
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_ENEWS2));
		staticId->SetBitmap(m_hBitmap);
		staticId = (CStatic *)GetDlgItem(IDC_DYCJ2);
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_SGJT2));
		staticId->SetBitmap(m_hBitmap);
	}
	//当前节目为空,不点亮音频任何图标

	currentUnit = AUDIO;
}
Пример #4
0
void CDAB_PLAYERDlg::OnStnClickedVideo()
{
	// TODO: Add your control notification handler code here

	HBITMAP m_hBitmap;
	CStatic* MenuAudio = (CStatic *)GetDlgItem(PIC_AUDIO);
	CStatic* MenuVideo = (CStatic *)GetDlgItem(PIC_VIDEO);

	//视频按钮亮
	m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_MENU_VIDEO2));
	MenuVideo->SetBitmap(m_hBitmap);

	//音频按钮暗
	m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_MENU_AUDIO));
	MenuAudio->SetBitmap(m_hBitmap);


	if (VIDEO == currentUnit)
	{
		return;
	}
	CStatic* staticId = (CStatic *)GetDlgItem(IDC_CCTV2);

	if (currentProm == CCTV5)
	{
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_CCTV1));
		staticId->SetBitmap(m_hBitmap);
		staticId = (CStatic *)GetDlgItem(IDC_DYCJ2);
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_DYCJ2));
		staticId->SetBitmap(m_hBitmap);
	}
	//当前节目为CCTV5,点亮CCTV5图标

	else if(currentProm == DYCJ)
	{
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_CCTV2));
		staticId->SetBitmap(m_hBitmap);
		staticId = (CStatic *)GetDlgItem(IDC_DYCJ2);
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_DYCJ1));
		staticId->SetBitmap(m_hBitmap);
	}
	//当前节目为DYCJ,点亮DYCJ图标

	else
	{
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_CCTV2));
		staticId->SetBitmap(m_hBitmap);
		staticId = (CStatic *)GetDlgItem(IDC_DYCJ2);
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_DYCJ2));
		staticId->SetBitmap(m_hBitmap);
	}
	//当前节目为空,不点亮视频任何图标
	currentUnit = VIDEO;
}
Пример #5
0
void BinImg::ShowBMP(int ID,CString strPath)
{
	CStatic *pStatic;
	HBITMAP hBitmap;
	hBitmap = (HBITMAP)LoadImage( GetModuleHandle(NULL),strPath, IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION);
	if (hBitmap  == NULL)
		hBitmap  = (HBITMAP)LoadImage( NULL,strPath, IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE|LR_CREATEDIBSECTION);
	pStatic=(CStatic *)GetDlgItem( ID );
	pStatic->SetBitmap(hBitmap);//显示图像	
}
void CTextureDialog::LoadData( void)
{
	CStatic *frame;

	for( int i = 0; i < NUMBER_OF_PS_TEXTURES; i++)
	{				
		if( S_OK != m_aImages[ i].Load( m_aFilenames[ i].c_str( ) ) )
			return;
		frame = ( CStatic*)GetDlgItem( IDC_STATICTEX1+i);
		frame->SetBitmap( ( HBITMAP)m_aImages[ i]);
	}
}
Пример #7
0
BOOL CHeadBand::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
    HBITMAP hbmp = ::LoadBitmap(AfxGetApp()->m_hInstance, MAKEINTRESOURCE(IDB_HEADBAND));
    CStatic* pImage = (CStatic*)GetDlgItem(IDC_IMAGE);
    pImage->SetBitmap(hbmp);
    pImage->InvalidateRect(NULL);
    pImage->UpdateWindow();
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}
Пример #8
0
void ShowPicture(HWND hwnd, const TCHAR* filename)
{
	CStatic * pStatic = (CStatic*)(CWnd::FromHandle(hwnd));

	HBITMAP bmp; 
	bmp = (HBITMAP)::LoadImage((HINSTANCE)GetWindowLongPtr(childwnd, GWLP_HINSTANCE), filename, 
			IMAGE_BITMAP,0,0,    
			LR_CREATEDIBSECTION  
			|  LR_DEFAULTSIZE  
			|  LR_LOADFROMFILE  
			|  LR_DEFAULTCOLOR); 
	pStatic->SetBitmap(bmp);

}
void CTextureDialog::OnStnClickedStatictex2()
{
	CFileDialog diag( 0, 0, 0, 0, _T("Bitmaps (*.bmp)|*.bmp|PNGs (*.png)|*.png|JPEGs(*.jpg;*.jpeg)|*.jpg; *.jpeg|All Files (*.*)|*.*||"), this, 0);
	if( diag.DoModal( ) == IDOK)
	{
		m_aImages[ 1].Destroy( );
		if( S_OK != m_aImages[ 1].Load( diag.GetFileName( ) ) )
			return;

		CStatic *frame = ( CStatic*)GetDlgItem( IDC_STATICTEX2);
		frame->SetBitmap( ( HBITMAP)m_aImages[ 1]);
		m_aFilenames[ 1] = diag.GetPathName( ).GetBuffer( );
	}
}
Пример #10
0
// Se elimina la imagen correspondiente al filtro "numFiltro", liberando la memoria del buffer
// Se muestra la imagen correspondiente al primer filtro anterior o posterior disponible
// Devuelve el nuevo filtro que se muestra o -1 si no hay mas
int ControlImagenes::EliminarImagen(int numFiltro, CStatic&	m_control)
{
    int filtroAnterior = EncontrarFiltroAnterior(numFiltro);

    if (filtroAnterior == -1)
    {
        // No hay ningun filtro
        MdispDeselect(m_Mildisplay,m_Milimagen[numFiltro-1]);
        m_control.SetBitmap((HBITMAP)m_backgound_bitmap); 

        //al quitar el fondo, se queda lo ultimo (es decir m_backgound_bitmap)
        //y ademas se veran las imagenes MIL cuando haya
        m_control.SetBitmap(NULL); 
    }
    else
    {
        MdispSelectWindow(m_Mildisplay,m_Milimagen[filtroAnterior-1],m_control);
    }
    MbufFree(m_Milimagen[numFiltro-1]);
    m_Milimagen[numFiltro-1] = M_NULL;
    m_numImagenes--; 

    return filtroAnterior;
}
Пример #11
0
/*
void CMessageBoxEx::SetBkBmpNid( UINT nBitmapIn ) 
{
	if( NULL != m_pBmp ) {
		::DeleteObject( m_pBmp ) ;
		m_pBmp = NULL ;
	}
	m_pBmp	= NULL ;
	HINSTANCE	hInstResource = NULL;	
	hInstResource = AfxFindResourceHandle(MAKEINTRESOURCE(nBitmapIn), RT_BITMAP);
	if( NULL != hInstResource ) {
		m_pBmp = (HBITMAP)::LoadImage(hInstResource, MAKEINTRESOURCE(nBitmapIn), IMAGE_BITMAP, 0, 0, 0);
	}
}
*/
void CMessageBoxEx::SetBitmap(UINT uBmpResource)
{
	HBITMAP hBitmap; //添加meaasgebox窗口中的图片 
	CStatic *pStatic = (CStatic *)GetDlgItem(IDC_IMAGE); 
	//关联图片ID 
	hBitmap = (HBITMAP)LoadImage(    
	AfxGetInstanceHandle(), 
	MAKEINTRESOURCE(uBmpResource), 
	IMAGE_BITMAP, 
	0, 
	0, 
	LR_LOADMAP3DCOLORS); 
	pStatic->ModifyStyle(0xF, SS_BITMAP|SS_CENTERIMAGE); 
	pStatic->SetBitmap(hBitmap); 
}
Пример #12
0
// add bitmap at the specified  column
void CCustomListRowWnd::AddBitmap(INT32 col, HBITMAP hBitmap,HBITMAP, DWORD dwBackColour)
{
    CStatic* pStat = new CStatic();
    ASSERT(m_ColumnObjects[col] == NULL);
    m_ColumnObjects[col] = pStat ;

    CRect cr;
    GetClientRect(&cr);

    BITMAP bitmap;
    CBitmap::FromHandle(hBitmap)->GetBitmap(&bitmap);
    CRect srect;
    srect.left = m_Parent->m_Parent->m_ColumnOffsetsArray[col] ;
    srect.right = srect.left + bitmap.bmWidth;
    srect.top	= cr.Height()/2 - bitmap.bmHeight/2;
    srect.bottom = cr.Height()/2 + bitmap.bmHeight/2;

    ////
    HDC hBitmapDC = CreateCompatibleDC(NULL);
    if (!hBitmapDC)
    {
        ERROR2RAW("Non-fatal GDI error");
    }
    SelectObject(hBitmapDC, hBitmap);
    // Iff we haven't been told what the background colour is...
    // We make the assumption that the pixel in the lower right corner has the background colour
    if (dwBackColour == 0xFFFFFFFF)
        dwBackColour = (DWORD) GetPixel(hBitmapDC, bitmap.bmWidth - 1, bitmap.bmHeight -1);
    DWORD sysBkColour = GetSysColor(COLOR_3DFACE);
    for (INT32 i = 0; i < bitmap.bmWidth; i++)
    {
        for (INT32 j = 0; j < bitmap.bmHeight; j++)
        {
            if ((DWORD) GetPixel(hBitmapDC, i, j) == dwBackColour)
                SetPixelV(hBitmapDC, i, j, (COLORREF) sysBkColour);
        }
    }
    DeleteDC(hBitmapDC);

    ////
    pStat->Create(NULL, WS_VISIBLE | SS_BITMAP, srect, this);
    pStat->SetBitmap(hBitmap);
}
Пример #13
0
// CCreateSeamlessMapDlg 消息处理程序
void CCreateSeamlessMapDlg::OnStnClickedStaticDefaultPng()
{
	// TODO: 在此添加控件通知处理程序代码
	CSelectSurfaceTextureDlg dlg;
	dlg.m_strInitSelectedFileName = m_strMaterial;
	if( dlg.DoModal() == IDOK )
	{
		m_strMaterial = dlg.getCurrentSelectedTexFile();

		CStatic* pStatic = (CStatic*)GetDlgItem( IDC_STATIC_DEFAULT_PNG );
		if( pStatic != NULL )
		{
			CString strTemp;
			strTemp.Format( "images/%s", m_strMaterial );

			CImage image;
			image.Load( strTemp );
			pStatic->SetBitmap( image.Detach() );
		}
	}
}
Пример #14
0
BOOL CCreateSeamlessMapDlg::OnInitDialog()
{
	CDialogEx::OnInitDialog();

	// TODO:  在此添加额外的初始化
	GetPrivateProfileString( _T("init"), "surfaceTex1", _T(""), m_strMaterial.GetBuffer( MAX_PATH ), MAX_PATH, _T("./Editor/MapBlock.ini") );

	CStatic* pStatic = (CStatic*)GetDlgItem( IDC_STATIC_DEFAULT_PNG );
	if( pStatic != NULL )
	{
		CString strTemp;
		strTemp.Format( "images/%s", m_strMaterial );

		CImage image;
		image.Load( strTemp );
		pStatic->SetBitmap( image.Detach() );
	}


	return TRUE;  // return TRUE unless you set the focus to a control
	// 异常: OCX 属性页应返回 FALSE
}
Пример #15
0
unsigned long _threadGetSignalValue(void * Pram)
{
	TRACE(L"设置信号强度Thread.....START\n");
	CDialog *dialog_H = (CDialog *)Pram;
	int signalValue = 0;

	HBITMAP m_hBitmap;
	CStatic* staticId;
	staticId = (CStatic *)dialog_H->GetDlgItem(IDC_STATIC_SIGNAL);
	while (isGetSignalValueThreadRunning)
	{
		signalValue = ddbif_getSignalValue();
		switch(signalValue)
		{
		case 0:

			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_SIGNAL0));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 1:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_SIGNAL1));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 2:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_SIGNAL2));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 3:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_SIGNAL3));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 4:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_SIGNAL4));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 5:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_SIGNAL5));
			staticId->SetBitmap(m_hBitmap);
			break;
		}
		Sleep(2000);
	}
	TRACE(L"设置信号强度Thread.....EXIT\n");
	return 0;
}
Пример #16
0
// CAbout message handlers
BOOL
CAbout::OnInitDialog()
{
	BOOL b = CDialog::OnInitDialog();

	CStatic * control = (CStatic*) GetDlgItem( IDC_ABOUT_BACKGROUND );
	check( control );

	if ( control )
	{
		control->SetBitmap( ::LoadBitmap( GetNonLocalizedResources(), MAKEINTRESOURCE( IDB_ABOUT ) ) );
	}

	control = ( CStatic* ) GetDlgItem( IDC_COMPONENT_VERSION );
	check( control );

	if ( control )
	{
		control->SetWindowText( TEXT( MASTER_PROD_VERS_STR2 ) );
	}

	return b;
}
Пример #17
0
void CDAB_PLAYERDlg::OnStnClickedDycj2()
{
	// TODO: Add your control notification handler code here

	HBITMAP m_hBitmap;
	CStatic* staticId = (CStatic *)GetDlgItem(IDC_DYCJ2);
	CStatic* staticIdFormer = (CStatic *)GetDlgItem(IDC_CCTV2);
	CStatic* videoStatic = (CStatic *)GetDlgItem(IDC_STATIC_VIDEO);

	if (VIDEO == currentUnit)
	{
		if (DYCJ == currentProm)
		{
			return;
		}
		
		ci_player->ResetPlayer();

		//设置左屏幕为“连接中”
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_SCREEN1));
		videoStatic->SetBitmap(m_hBitmap);

		//设置第一财经的图标
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_DYCJ1));
		staticId->SetBitmap(m_hBitmap);

		//将cctv5图标改回
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_CCTV2));
		staticIdFormer->SetBitmap(m_hBitmap);

		if (ddbif_startVideoService(2))
		{
			//MessageBox(TEXT("启动节目失败!"));
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_SCREEN2));
			videoStatic->SetBitmap(m_hBitmap);
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_DYCJ2));
			staticId->SetBitmap(m_hBitmap);
			currentProm = NONE;
			//当前节目为空
			return;
		}

		//m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_SCREEN1));
		//videoStatic->SetBitmap(m_hBitmap);

		Sleep(1000);

		RECT rcDisplay = {0};
		GetDlgItem(IDC_STATIC_VIDEO)->GetWindowRect(&rcDisplay);
		/*if (ci_player->PlayDMBFlow(rcDisplay.left, rcDisplay.top, rcDisplay.right, rcDisplay.bottom, TEXT("dmb")))*/
		if (ci_player->PlayDMBFlow(4, 40, 271, 224, TEXT("dmb")))
		{
			ddbif_StopVideoService();
			//MessageBox(TEXT("播放失败!"));
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_SCREEN2));
			videoStatic->SetBitmap(m_hBitmap);
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_DYCJ2));
			staticId->SetBitmap(m_hBitmap);
			currentProm = NONE;
			//当前节目为空
			return;
		}

		currentProm = DYCJ;

	}

	//播放音频
	else
	{
		if (SGJT == currentProm)
		{
			return;
		}

		ci_player->ResetPlayer();

		//设置左屏幕为“连接中”
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_SCREEN1));
		videoStatic->SetBitmap(m_hBitmap);

		//上广交通白色
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_SGJT1));
		staticId->SetBitmap(m_hBitmap);

		//将ENEWS图标改回
		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_ENEWS2));
		staticIdFormer->SetBitmap(m_hBitmap);

		if (ddbif_startVideoService(1))
		{
			//MessageBox(TEXT("启动节目失败!"));
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_SCREEN2));
			videoStatic->SetBitmap(m_hBitmap);
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_SGJT2));
			staticId->SetBitmap(m_hBitmap);
			currentProm = NONE;
			//当前节目为空
			return;
		}

// 		m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_SCREEN1));
// 		videoStatic->SetBitmap(m_hBitmap);

		Sleep(1000);

		RECT rcDisplay = {0};
		GetDlgItem(IDC_STATIC_VIDEO)->GetWindowRect(&rcDisplay);
		/*if (ci_player->PlayDMBFlow(rcDisplay.left, rcDisplay.top, rcDisplay.right, rcDisplay.bottom, TEXT("dab")))*/
		if (ci_player->PlayDMBFlow(4, 40, 271, 224, TEXT("dab")))
		{
			ddbif_StopVideoService();
			//MessageBox(TEXT("播放失败!"));
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_SCREEN2));
			videoStatic->SetBitmap(m_hBitmap);
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_CHAN_SGJT2));
			staticId->SetBitmap(m_hBitmap);
			currentProm = NONE;
			//当前节目为空
			return;
		}
		currentProm = SGJT;
	}

	

	m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_SCREEN0));
	videoStatic->SetBitmap(m_hBitmap);
}
Пример #18
0
void CDAB_PLAYERDlg::ChangVolumeView(int nVolume)
{
	HBITMAP m_hBitmap;
	CStatic* staticId;
	staticId = (CStatic *)GetDlgItem(IDC_STATIC_VOLUME);
	switch(nVolume)
	{
		case 0:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR00));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 6:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR01));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 12:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR02));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 18:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR03));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 24:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR04));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 30:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR05));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 36:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR06));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 42:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR07));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 48:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR08));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 54:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR09));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 60:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR10));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 66:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR11));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 72:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR12));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 78:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR13));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 84:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR14));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 90:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR15));
			staticId->SetBitmap(m_hBitmap);
			break;
		case 100:
			m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_VOL_BAR16));
			staticId->SetBitmap(m_hBitmap);
			break;
	}
}
Пример #19
0
BOOL CDAB_PLAYERDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	// 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动
	//  执行此操作
	SetIcon(m_hIcon, TRUE);			// 设置大图标
	SetIcon(m_hIcon, FALSE);		// 设置小图标

	// TODO: 在此添加额外的初始化代码

	GetDlgItem(IDC_STATIC_SCREEN)->GetWindowRect(&video_rect);
	video_rect.left = 4;
	video_rect.top = 40;
	video_rect.right = 271;
	video_rect.bottom = 224;
	currentUnit = VIDEO;
	isFullScreen = FALSE;
	currentProm = NONE;

	HBITMAP m_hBitmap;
	CStatic* MenuAudio = (CStatic *)GetDlgItem(PIC_AUDIO);
	CStatic* MenuVideo = (CStatic *)GetDlgItem(PIC_VIDEO);
	CStatic* VideoScreen = (CStatic *)GetDlgItem(IDC_STATIC_SCREEN);


	//视频按钮亮
	m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_MENU_VIDEO2));
	MenuVideo->SetBitmap(m_hBitmap);

	//音频按钮暗
	m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_MENU_AUDIO));
	MenuAudio->SetBitmap(m_hBitmap);

	m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE  (IDB_SCREEN0));
	VideoScreen->SetBitmap(m_hBitmap);
	
#if 1
	//启动DAB
	if(ddbif_register() == DDBIF_ERROR) {
		MessageBox(TEXT("注册DDBSDK失败!"));
		printf("register error!\n");
		return TRUE;
	}
	ddbif_openDdbsdk();
	
	//开启打开DMB设备的线程
	statrDeviceThread = CreateThread(NULL, 0, ddif_ThreadStartDMBDevice, NULL, 0, &statrDeviceThread_ID);

	//配置播放器
	ci_player = new CI_Player;
	if (ci_player->InitialPlayer(GetStreamData))
	{
		MessageBox(TEXT("播放器初始化失败!"));
	}
	/*m_nVolume = ci_player->GetVolumeValue();*/
	ChangVolumeView(48);
	m_nVolume = 48;

	//开启信号设置的线程
	getSignalValueThread = CreateThread(NULL, 0, _threadGetSignalValue, (LPVOID)this, 0, &getSignalValueThread_ID);

// 	if (!deviceOpen)
// 	{
// 		MessageBox(TEXT("DAB设备启动失败!"));
// 		return TRUE;
// 	}
#endif

	return TRUE;  // 除非将焦点设置到控件,否则返回 TRUE
}