當前位置:首頁 » 風景景觀 » clistctrl背景色

clistctrl背景色

發布時間: 2020-12-19 01:35:05

1. 關於CListCtrl無數據區域出現了透明背景色,請問如何解決

直接換個瀏覽器,我以前用過一下瀏覽器ie6,ie7,firefox,遨遊,netscape。 我以前也用遨遊,因為愛死機就換了世界之窗回,感覺非答常好。強烈推薦! 推薦理由:高亮關鍵字(可以高亮多個關鍵字)界面美觀,沒有亂七八糟的按鈕,可以自定義快捷鍵,一鍵...

2. VC,CListCtrl控制項中,怎麼設置新插入一個新項的字體和背景顏色

列表控制項要改抄變背景和文字顏色襲,需要派生CListCtrl生成自定義類,之後重載NM_CUSTOMDRAW消息進行繪制。

網上相關文章不少可以參考:

http://www.cnblogs.com/rainbowzc/archive/2012/02/26/2369082.html
http://blog.csdn.net/hurryboylqs/article/details/5858997

3. 如何修改CListCtrl中的字體的顏色,選中行的背景色彩

兩種方法:
1. 子類化CListCtrl,響應ON_NOTIFY_REFLECT(NM_CUSTOMDRAW,xxx)

2. 在父類中響應ON_NOTIFY( NM_CUSTOMDRAW,xxx)

4. MFC改變控制項背景顏色的問題

改變按鈕背景的顏色好像只能用自繪按鈕

可以直接改變靜態控制項背景的顏色。

5. VC中改變窗口背景顏色和控制項背景顏色

1.改變對話框的背景色
在C…App類中的InitInstance()里添加
SetDialogBkColor(RGB(0,192,0),RGB(0,0,0));
2.如果想改變靜態文本或單選按鈕的背景色可以用你說的那個獲得控制項ID,然後設置背景色,具體步驟:
(1)響應對話框類的WM_CTLCOLOR消息生成OnCtlColor函數
(2)為對話框類添加成員變數CBrush m_brush;
並在初始化函數中初始化m_brush.CreateSolidBrush(RGB(0,255,0));
(3)在OnCtlColor函數中添加代碼以改變控制項的文字顏色和背景色
switch(pWnd->GetDlgCtrlID())
{
case(IDC_INPUT):
pDC->SetTextColor(RGB(255,0,192));
pDC->SetBkMode(TRANSPARENT);
return m_brush;
break;
case(IDC_EDIT1):
pDC->SetTextColor(RGB(255,0,0));
pDC->SetBkMode(TRANSPARENT);
return m_brush;
break;
case(IDC_CHOICE):
pDC->SetTextColor(RGB(255,128,0));
pDC->SetBkMode(TRANSPARENT);
return m_brush;
break;
case(IDC_RADIO1):
pDC->SetTextColor(RGB(255,0,20));
pDC->SetBkMode(TRANSPARENT);
return m_brush;
break;
default:
break;
}
3.如果想改變按鈕的背景色,簡直太難了,你要重寫兩個類,還需要在網上下,孫鑫的視頻教程中也簡單介紹了這個,可只是改變按鈕的文字顏色

6. clistctrl 設置背景色

clistctrl 設置背景色

XYL。 http://..com/question/183840205.html 。SCB

很多美女都可以看專的,超多美女

非常屬給力的

7. MFC 如何使tab控制項背景顏色與對話框顏色一致

額,你需來要使用WM_PAINT重繪CTabCtrl
時間自有限,給你幾個提示
1、在CTabCtrl的基礎上重建新類
2、然後重載OnPaint
3、刷顏色,通過GetClientRect獲得區域,然後用CBrush刷顏色
4、你會發現所有的標簽都沒了,但控制項及標簽的顏色都刷上了
5、用GetItmeRect獲取各個標簽的坐標,然後利用moveto lineto畫線
6、在給每個標簽畫線的過程中利用Textout函數輸出原本的文本
7、如果需要,在選中的標簽上可以刷不同的顏色
8、完成,不過突然發現樓主卻一分都不給。。。

8. 如何修改控制項背景顏色

打開軟體並新建一個工程。

點擊圖片中箭頭處的圖標並在窗體上拖版放TextBox控制項。

放置完TextBox控制項後就權左鍵雙擊Textbox控制項進入Text1事件。

圖中是代碼輸入框。

左鍵單擊圖中紅色的小框框裡面「三角形」圖案呼出下拉菜單並選擇「Form」。

在代碼框中輸入以下代碼。
Private Sub Form_Load()
Text1.BackColor = RGB(255, 0, 255)
End Sub

點擊「啟動」運行可以看到用代碼方式來改變了TextBox控制項的默認背景了。

9. 更改ListView控制項列首的背景色

Option Explicit
Private WithEvents bc As PictureBox

Private Sub Command1_Click()
Call SetLineBackColor(ListView1, 3, &HE0E0E0)
End Sub

Public Sub SetLineBackColor(Lv As ListView, LvLineCount As Long, LVBC As Long)'分別是listview的名稱,第幾行,背景色
Lv.Parent.ScaleMode = vbTwips
If bc Is Nothing Then
Set bc = Controls.Add("VB.PictureBox", "picbg")
End If
With bc
.Visible = True
.BackColor = Lv.BackColor
.ScaleMode = vbTwips
.BorderStyle = vbBSNone
.AutoRedraw = True
.Visible = False
.Width = Lv.Width
.Height = Lv.ListItems(1).Height * (LvLineCount + 1)
.ScaleHeight = LvLineCount + 1
.ScaleWidth = 1
.DrawWidth = 1
End With
bc.Line (0, LvLineCount - 1)-(1, LvLineCount), LVBC, BF
Lv.Picture = bc.Image
End Sub

本代碼屬於引用他人的我還沒有試過但我知道能用你可以試著用下看行不再說

10. CListCtrl 設置文字背景色的時候,怎麼只在有定的地方出現背景色

設置列表視圖控制項奇偶行顏色

1添加聲明

afx_msg void OnGlobalhook();
//}}AFX_MSG
afx_msg void OnCustomdrawMyList ( NMHDR* pNMHDR, LRESULT* pResult );

2添加消息映射

BEGIN_MESSAGE_MAP(CPage5, CDialog)
//{{AFX_MSG_MAP(CPage5)
ON_NOTIFY(TVN_SELCHANGED, IDC_TREE1, OnSelchangedTree1)
ON_WM_CONTEXTMENU()
ON_COMMAND(ID_GLOBALHOOK, OnGlobalhook)
//}}AFX_MSG_MAP
ON_NOTIFY ( NM_CUSTOMDRAW, IDC_LIST1, OnCusto

void CMyListCtrlView::OnCustomdrawMyList(NMHDR *pNMHDR, LRESULT *pResult)
{
NMLVCUSTOMDRAW* pLVCD = reinterpret_cast<NMLVCUSTOMDRAW*>( pNMHDR );

//設置listctrl的格式,由格子等

pListCtrl.SetExtendedStyle(pListCtrl.GetExtendedStyle() | LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);

if ( CDDS_PREPAINT == pLVCD->nmcd.dwDrawStage )
{
*pResult = CDRF_NOTIFYITEMDRAW;
}
else if ( CDDS_ITEMPREPAINT == pLVCD->nmcd.dwDrawStage )
{

*pResult = CDRF_NOTIFYSUBITEMDRAW;
}
else if ( (CDDS_ITEMPREPAINT | CDDS_SUBITEM) == pLVCD->nmcd.dwDrawStage )
{

COLORREF clrNewTextColor, clrNewBkColor;

int nItem = static_cast<int>( pLVCD->nmcd.dwItemSpec );

// CString strTemp = m_ctListCtrl.GetItemText(nItem,pLVCD->iSubItem);

// if(strTemp == m_strName)
if(nItem%2 ==0) //奇偶行顏色不同,也可以改變某一小單元的顏色,比如是某行某列,
//用strTemp得到這個單元的文本值,然後再做處理

{
clrNewTextColor = RGB(0,0,0); //Set the text to red
clrNewBkColor = RGB(240,240,240); //Set the bkgrnd color to blue
}
else
{

clrNewTextColor = RGB(0,0,0); //Leave the text black
clrNewBkColor = RGB(255,255,255); //leave the bkgrnd color white
}

pLVCD->clrText = clrNewTextColor;
pLVCD->clrTextBk = clrNewBkColor;

// Tell Windows to paint the control itself.
*pResult = CDRF_DODEFAULT;

}
}

設置列表控制項某行顏色

1添加聲明

afx_msg void OnGlobalhook();
//}}AFX_MSG
afx_msg void OnCustomdrawMyList ( NMHDR* pNMHDR, LRESULT* pResult );

2添加消息映射

BEGIN_MESSAGE_MAP(CPage5, CDialog)
//{{AFX_MSG_MAP(CPage5)
ON_NOTIFY(TVN_SELCHANGED, IDC_TREE1, OnSelchangedTree1)
ON_WM_CONTEXTMENU()
ON_COMMAND(ID_GLOBALHOOK, OnGlobalhook)
//}}AFX_MSG_MAP
ON_NOTIFY ( NM_CUSTOMDRAW, IDC_LIST1, OnCustomdrawMyList )
END_MESSAGE_MAP()

3代碼實現

void CPage5::OnCustomdrawMyList ( NMHDR* pNMHDR, LRESULT* pResult )
{
//This code based on Michael Dunn's excellent article on
//list control custom draw at http://www.codeproject.com/listctrl/lvcustomdraw.asp

NMLVCUSTOMDRAW* pLVCD = reinterpret_cast<NMLVCUSTOMDRAW*>( pNMHDR );

// Take the default processing unless we set this to something else below.
*pResult = CDRF_DODEFAULT;

// First thing - check the draw stage. If it's the control's prepaint
// stage, then tell Windows we want messages for every item.
if ( CDDS_PREPAINT == pLVCD->nmcd.dwDrawStage )
{
*pResult = CDRF_NOTIFYITEMDRAW;
}
else if ( CDDS_ITEMPREPAINT == pLVCD->nmcd.dwDrawStage )
{
// This is the notification message for an item. We'll request
// notifications before each subitem's prepaint stage.

*pResult = CDRF_NOTIFYSUBITEMDRAW;
}
else if ( (CDDS_ITEMPREPAINT | CDDS_SUBITEM) == pLVCD->nmcd.dwDrawStage )
{

COLORREF clrNewTextColor, clrNewBkColor;

int nItem = static_cast<int>( pLVCD->nmcd.dwItemSpec );

// CString strTemp = m_HookList.GetItemText(nItem,pLVCD->iSubItem);
CString strTemp = m_HookList.GetItemText(nItem,5);
CString strtemp2 = m_HookList.GetItemText(nItem,4);

if(strTemp == "YES"||strtemp2 == "YES")
{
clrNewTextColor = RGB(255,0,0); //Set the text to red
clrNewBkColor = RGB(255,255,255); //Set the bkgrnd color to blue
}
else
{

clrNewTextColor = RGB(0,0,0); //Leave the text black
clrNewBkColor = RGB(255,255,255); //leave the bkgrnd color white
}

pLVCD->clrText = clrNewTextColor;
pLVCD->clrTextBk = clrNewBkColor;

// Tell Windows to paint the control itself.
*pResult = CDRF_DODEFAULT;

}
}

RGB(182,88,157); 子色

熱點內容
一部國外電影,一個老男人騎個摩托車 發布:2024-08-19 09:13:10 瀏覽:920
脖子上有睾丸是什麼電影 發布:2024-08-19 09:03:17 瀏覽:374
變形金剛撒誰家的 發布:2024-08-19 08:43:06 瀏覽:478
美國男電影雙胞胎 發布:2024-08-19 08:42:20 瀏覽:764
黑人橄欖球少年收養電影 發布:2024-08-19 08:25:26 瀏覽:918
夏目哉大片 發布:2024-08-19 08:09:22 瀏覽:806
他第一部出演的電視劇是,的英語 發布:2024-08-19 08:07:54 瀏覽:654
電影檢索 發布:2024-08-19 07:48:52 瀏覽:198
誰有視頻 發布:2024-08-19 07:41:55 瀏覽:141
成龍香港鬼片電影大全 發布:2024-08-19 07:39:46 瀏覽:223