設置按鈕背景色
① ios開發怎麼設置button的背景色
1.通過按鈕的事件來設置背景色
- (void)viewDidLoad {
[super viewDidLoad];
UIButton *button1 = [[UIButton alloc] initWithFrame:CGRectMake(50, 200, 100, 50)];
[button1 setTitle:@"button1" forState:UIControlStateNormal];
button1.backgroundColor = [UIColor orangeColor];
[button1 addTarget:self action:@selector(button1BackGroundHighlighted:) forControlEvents:UIControlEventTouchDown];
[button1 addTarget:self action:@selector(button1BackGroundNormal:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:button1];
}
// button1普通狀態下的背景色
- (void)button1BackGroundNormal:(UIButton *)sender
{
sender.backgroundColor = [UIColor orangeColor];
}
// button1高亮狀態下的背景色
- (void)button1BackGroundHighlighted:(UIButton *)sender
{
sender.backgroundColor = [UIColor greenColor];
}
② html 如何給button設置背景圖片的同時設置按鈕的背景色
這個可以用css來實現:background:url('imgurl')裡面放圖片地址,如果還想同時顯示背景,內需要用透容明的PNG圖片,如果不想圖片重復顯示需要設置背景不重復:background-repeat:no-repeat; 然後用background-color:red;設置按鈕的背景顏色。下面例子是簡寫
<inputtype="button"style="background:url(./aa.png)no-repeatcenterred;width:200px;height:200px;">
③ 如何用javascript改變按鈕背景色樣式
這個來有一個簡單的方法
比如,自你有兩個按鈕的樣式,一個是class_1,一個是class_2,
你只需要給一個觸發,
<button id="my_button" class="class_1"></button>
<input type="button" onclick="change();" value="改變顏色"/>
<script>
function change(){
var class=document.getElementById('my_button').value;
if(class=='class_1'){
document.getElementById('my_button').class='class_2';
}
else{
document.getElementById('my_button').class='class_1';
}
</script>
④ VC++如何改變按鈕背景色
1、在VC編程中要改變控制項(諸如CView, CFrameWnd, or CWnd等)的背景色可通過處理特定的消息來實現。但如果想改變按鈕的顏色,就只能使用自繪制的按鈕(也可以用點陣圖按鈕)而不能通過OnCtlColor()改變。
2、在一個MFC應用程序中,要改變控制項的背景色可通過重載OnCtlColor()函數來實現。方法是在該函數中設置所需顏色後再返回一個畫刷句柄便可重繪控制項背景色。OnCtlColor()函數對於控制項背景色的處理是通過捕捉相應的控制項消息來實現的。常用的此類消息有:
CTLCOLOR_DLG 對話框
CTLCOLOR_EDIT 編輯框
CTLCOLOR_LISTBOX 列表框
CTLCOLOR_MSGBOX 消息框
CTLCOLOR_SCROLLBAR 滑動條
CTLCOLOR_STATIC 靜態文本框、矩形等。
以下示例代碼說明如何更改以上控制項的背景色:
//CmyDialog.h定義
class CMyDialog : public Cdialog //派生自己的對話框類
{
……..
// Implementation
protected:
// Generated message map functions
//{{AFX_MSG(CMyDialog)
afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);
…….
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//CmyDialog.cpp 定義
……
HBRUSH CMyDialog::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
switch (nCtlColor) {
case CTLCOLOR_EDIT:
case CTLCOLOR_MSGBOX:
case CTLCOLOR_DLG :
case CTLCOLOR_EDIT : //在此加入你想要改變背景色的控制項消息
pDC->SetBkMode(TRANSPARENT);
HBRUSH B = CreateSolidBrush(COLOR); //COLOR是你想設置的顏色
return (HBRUSH) B;
default: //其他控制項設置自己默認的顏色和背景刷.
return CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
}}
說明:
1)、可分別處理以上消息以實現不同控制項不同背景色。
2)、此方法不適用於按紐控制項。
3、通過定製來實現不同顏色按紐。
第一步:派生出自己的按紐
//CcolorButton.h
class CColorButton : public CButton
{
DECLARE_DYNAMIC(CColorButton)
public:
CColorButton();
virtual ~CColorButton();
BOOL Attach(const UINT nID, CWnd* pParent,
const COLORREF BGColor = RGB(192, 123, 192), // 按紐的背景色
const COLORREF FGColor = RGB(1, 1, 1), // 文本顏色
);
protected:
virtual void DrawItem(LPDRAWITEMSTRUCT lpDIS); //重定義虛擬函數DrawItem
void DrawFrame(CDC *DC, CRect R); //繪制按紐框
void DrawFilledRect(CDC *DC, CRect R, COLORREF color); //填充按紐框
void DrawLine(CDC *DC, CRect EndPoints, COLORREF color);
void DrawLine(CDC *DC, long left, long top, long right, long bottom, COLORREF color);
void DrawButtonText(CDC *DC, CRect R, const char *Buf, COLORREF TextColor);
//繪制按紐上的文本
COLORREF GetFGColor() { return m_fg; }
COLORREF GetBGColor() { return m_bg; }
private:
COLORREF m_fg, m_bg;
};
#endif
第二步:定義各函數
//CcolorButton.cpp
……
// CColorButton
IMPLEMENT_DYNAMIC(CColorButton, CButton)
CColorButton::CColorButton()
{ }
CColorButton::~CColorButton()
{
}
//定義Attach()函數
BOOL CColorButton::Attach(const UINT nID, CWnd* pParent, const COLORREF BGColor, const COLORREF FGColor)
{
if (!SubclassDlgItem(nID, pParent))
return FALSE;
m_fg = FGColor;
m_bg = BGColor;
return TRUE;
}
//重載DrawItem()
void CColorButton::DrawItem(LPDRAWITEMSTRUCT lpDIS)
{
CDC* pDC = CDC::FromHandle(lpDIS->hDC);
UINT state = lpDIS->itemState;
CRect focusRect, btnRect;
focusRect.CopyRect(&lpDIS->rcItem); //按紐的選中虛線框
btnRect.CopyRect(&lpDIS->rcItem);
// 設置表示按紐被選中的虛線框
focusRect.left += 4;
focusRect.right -= 4;
focusRect.top += 4;
focusRect.bottom -= 4;
// 按紐標題
const int bufSize = 512;
TCHAR buffer[bufSize];
GetWindowText(buffer, bufSize);
// 繪制並標志按紐
DrawFilledRect(pDC, btnRect, GetBGColor());
DrawFrame(pDC, btnRect);
DrawButtonText(pDC, btnRect, buffer, GetFGColor());
// 如果按紐處於選中狀態則在其上繪制選中虛線框
if (state & ODS_FOCUS) {
DrawFocusRect(lpDIS->hDC, (LPRECT)&focusRect);
}
}
void CColorButton::DrawFrame(CDC *DC, CRect R)
{ //繪制按紐,用戶通過定製該函數可實現不同形狀的按紐。
DrawLine(DC, R.left, R.top, R.right, R.top, RGB(255, 255, 255));
DrawLine(DC, R.left, R.top, R.left, R.bottom, RGB(255, 255, 255));
//以下繪制按紐的外圍框線以使按紐有立體感
DrawLine(DC, R.left + 1, R.bottom - 1, R.right, R.bottom - 1, RGB(1, 1, 1));
//繪制按紐左框線和上框線
DrawLine(DC, R.right - 1, R.top + 1, R.right - 1, R.bottom, RGB(1, 1, 1));
//繪制按紐右框線和下框線
}
//用色彩填充按紐框
void CColorButton::DrawFilledRect(CDC *DC, CRect R, COLORREF color)
{
CBrush B;
B.CreateSolidBrush(color);
DC->FillRect(R, &B);
}
// DrawLine用於繪制按紐,其為多態函數
void CColorButton::DrawLine(CDC *DC, CRect EndPoints, COLORREF color)
{
…
}
void CColorButton::DrawLine(CDC *DC, long left, long top, long right, long bottom, COLORREF color)
{
……
}
//繪制按紐文本
void CColorButton::DrawButtonText(CDC *DC, CRect R, const char *Buf, COLORREF TextColor)
{
COLORREF prevColor = DC->SetTextColor(TextColor);
DC->SetBkMode(TRANSPARENT);
DC->DrawText(Buf, strlen(Buf), R, DT_CENTER|DT_VCENTER|DT_SINGLELINE);
DC->SetTextColor(prevColor);
}
第三步:引用定製類
定製任意對話框CColorDlg,在其上畫一按鍵控制項。ID為IDOK。
//CColorDlg.h
class CColorDlg : public CDialog
{
…..
// Implementation
protected:
CColorButton m_btnOK;
}
//CColorDlg.cpp
…….
BOOL CColorBtnSampleDlg::OnInitDialog()
{
CDialog::OnInitDialog();
…….
VERIFY(m_btnOK.Attach(IDOK, this, RED, BLUE, YELLOW));
…….
}
⑤ 怎樣改變BUTTON控制項的背景色和字體色
新建來一個對話框工程,在對話自框中添加一個按鈕,然後,從button類繼承一個子類 CNewButton, 重載 PreSubclassWindow,修改按鈕的屬性 ModifyStyle( 0 , BS_OWNERDRAW ); ,告訴系統,用戶手繪按鈕; 然後再重載DrawItem,在這里邊修改按鈕的背景色,字體的顏色,修改lpDrawItemStruct參數的值,使用SetBkColor,設置按鈕字體的顏色, SetTextColor設置字體的顏色, 使用FillRect可以填充按鈕的背景色。設置完後,給對話框的按鈕添加一個變數,基類就選擇剛才創建的CNewButton
⑥ 怎樣在HTML中插入Button按鈕,且按鈕要顯示顏色
首先插入內容:
<button type='button' class='btn-style'>點擊</button>
css樣式有兩種,一種是定義一個class,命名為btn-style(此處定義為紅色背景)
.btn-style{
background-color:red
}
另一種定義:直接在button標簽上寫內聯樣式,如下:
<button type='button' style='background-color:red'>點擊</button>
效果如下,按鈕紅色背景:
(6)設置按鈕背景色擴展閱讀:
1、<button> 標簽定義一個按鈕。在 button 元素內部,您可以放置內容,比如文本或圖像。
2、同樣設置按鈕其他樣式,比如:
邊框:border:1px solid #1054ff;//表示邊框為1px,實體線,顏色為#1054ff
字體顏色:color:#1054ff;//表示字體顏色為#1054ff
按鈕圓角設置:border-radius:4px;//表示按鈕四個角有4px的圓角化
⑦ ui怎麼設置button被選中後的背景顏色
1,通過按鈕的事件來設置背景色
- (void)viewDidLoad {
[super viewDidLoad];
UIButton *button1 = [[UIButton alloc] initWithFrame:CGRectMake(50, 200, 100, 50)];
[button1 setTitle:@"button1" forState:UIControlStateNormal];
button1.backgroundColor = [UIColor orangeColor];
[button1 addTarget:self action:@selector(button1BackGroundHighlighted:) forControlEvents:UIControlEventTouchDown];
[button1 addTarget:self action:@selector(button1BackGroundNormal:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:button1];
}
// button1普通狀態下的背景色
- (void)button1BackGroundNormal:(UIButton *)sender
{
sender.backgroundColor = [UIColor orangeColor];
}
// button1高亮狀態下的背景色
- (void)button1BackGroundHighlighted:(UIButton *)sender
{
sender.backgroundColor = [UIColor greenColor];
}
2,通過把顏色轉換為UIImage來作為按鈕不同狀態下的背景圖片
- (void)viewDidLoad {
[super viewDidLoad];
UIButton *button2 = [[UIButton alloc] initWithFrame:CGRectMake(170, 200, 100, 50)];
[button2 setTitle:@"button2" forState:UIControlStateNormal];
[button2 setBackgroundImage:[self imageWithColor:[UIColor redColor]] forState:UIControlStateNormal];
[button2 setBackgroundImage:[self imageWithColor:[UIColor grayColor]] forState:UIControlStateHighlighted];
[self.view addSubview:button2];
}
// 顏色轉換為背景圖片
- (UIImage *)imageWithColor:(UIColor *)color {
CGRect rect = CGRectMake(0.0f, 0.0f, 1.0f, 1.0f);
UIGraphicsBeginImageContext(rect.size);
CGContextRef context = UIGraphicsGetCurrentContext();
(context, [color CGColor]);
CGContextFillRect(context, rect);
UIImage *image = ();
UIGraphicsEndImageContext();
return image;
}
⑧ HTML中如何改變按鈕的顏色
HTML button按鈕的邊框樣式與顏色都是可以修改的,用基本的HTML語法難以設計出美輪美奐的按鈕風格,透過CSS卻可以很容易的辦到,在本篇HTML button按鈕邊框樣式與顏色的修改介紹中,我們將會用到CSSborder屬性其中的邊框樣式(border-style)以及邊框顏色(border-color)來製做,當然按鈕本身的寬度(width)與高度(height)也必須搭配使用,無論是button還是submit按鈕都可以用這樣的技巧,但不同的瀏覽器可能會有一點點小小的差異,這跟瀏覽器本身有關系,設計按鈕的css效果時,通常要多用幾個瀏覽器測試。
範例一、HTML button按鈕邊框樣式與顏色
範例二延續範例一的程式碼,增加了background-color 的屬性,替按鈕增加背景顏色,這里為了讓範例比較簡潔一點,所以背景顏色都是用粉紅色(pink)呈現,你也可以自己修改為其他不同的背景顏色。
⑨ jquery中如何改變按鈕背景色
用jquery如何實現點擊一欄目實現欄目變色,再點擊另一欄目也變色,但原來的變回原色,我有個數組a(1、2、3)我循環遍歷輸出a的值。
復制代碼 代碼如下:
<ul>
<li><a onclick="show();"><b>a[0]<b><a></li>
<li><a onclick="show();"><b>a[1]<b><a></li>
<li><a onclick="show();"><b>a[2]<b><a></li>
點擊1—1變色。點擊2,—變色。但1會變回原來的顏色,我show方法實現了其他的功能.。
下面是我初試的代碼:
HTML code:
復制代碼 代碼如下:
<style type="text/css">
.clckClass{color:red;}
</style>
<script type="text/javascript">
$('ul li a').bind('click', function(){
$('ul li a:not(this)').removeClass('clckClass');
$(this).addClass('clckClass');
});
</script>JScript code:
<style type="text/css">
.clckClass{color:red;}
</style>
<script type="text/javascript">
$('ul li a').bind('click', function(){
$('.clckClass').removeClass('clckClass');
$(this).addClass('clckClass');
});
</script>
上面的代碼中,樣式『clckClass『可能在其他元素上使用。使用$(『.clckClass').removeClass(『clckClass'),會將畫面上所用使用clckClass樣式的元素移出clckClass樣式的,這顯然不是我們要得結果。我們只需要移出ul li a下的clckClass樣,不過後來發現上面的代碼中,唯一一點是那個clckClass只能在這幾個標簽使用,如果其他也用的話,就可能會影響效果,是我考慮不周到。