editview中 如果想textview改变字体颜色的颜色 应该怎么改

b217dgy 的BLOG
用户名:b217dgy
文章数:38
访问量:109013
注册日期:
阅读量:5863
阅读量:12276
阅读量:302630
阅读量:1021489
51CTO推荐博文
1、在类public处定义: CFont m_F
2、在初始化处OnInitDialog()定义:m_Font.CreatePointFont(150,_T("华文行楷"),NULL);m_ControlEdit.SetFont(&m_Font,FALSE);//m_ControlEdit为需要改变字体的edit控件control变量转载的:[问题提出]你有没有感到Edit,Static....控件的字体太单调,没什么新新样?下面的内容,给你一个解答.[解决方法]简单的步骤:在Windows中,每个窗体都有自己的字体.要改变其字体首先要CFont::CreateFont创建一个字体,然后用CWnd::SetFont选择此字体,赋给控件.但很多人可能会因为CreateFont的参数之多,望而却步.下面我介绍一下参数.函数原型:BOOL CreateFont( int nHeight, int nWidth, int nEscapement, intnOrientation, int nWeight, BYTE bItalic, BYTE bUnderline, BYTE cStrikeOut,BYTE nCharSet, BYTE nOutPrecision, BYTE nClipPrecision, BYTE nQuality, BYTEnPitchAndFamily, LPCTSTR lpszFacename );参数说明:nHeight
:字体高度.&0:字体的高度值;=0:字体采用缺省直.&0:此值的绝对值为高度.nWidth
:字体宽度.nEscapement
:文本行的倾斜度.nOrientation
:字符基线的倾斜度.nWeight
:字体的粗细.如下: .FW_DONTCARE .FW_THIN .FW_EXTRALIGHT .....bItalic
:字体是否为斜体bUnderline
:字体是否带下划线cStrikeOut
:字体是否带删除线nCharSet
:字体的字符集 .ANSI_CHARSET .DEFAULT_CHARSET .SYMBOL_CHARSET ......nOutPrecision
:字符的输出精度nClipPrecision :字符裁剪的精度nQuality
:字符的输出质量nPitchAndFamily :字符间距和字体族(低位说明间距,高位说明字符族)lpszFacename
:字体名称[程序实现]假设你已有了名为My的对话框工程.并有一个ID=IDC_EDIT1的Edit控件.class CMyDlg : public CDialog{public: CFont m_F........};BOOL CTMyDlg::OnInitDialog(){ CDialog::OnInitDialog(); // TODO: Add extra initialization here //CFont m_F m_Font.CreateFont(-11,0,0,0,100,FALSE,FALSE,0,ANSI_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,FF_SWISS,"Arial"); CEdit *m_Edit=(CEdit *)GetDlgItem(IDC_EDIT1); m_Edit-&SetFont(&m_Font,FALSE); return TRUE; // return TRUE unless you set the focus to a control}说明:在OnInitDialog()中的//CFont m_F前的"//"号去掉,将类声明中的CFontm_F去掉会是什么结果?请自己试试.本文出自 “” 博客,请务必保留此出处
了这篇文章
类别:┆阅读(0)┆评论(0)3390人阅读
Android(88)
&&&&&& android中的selector大家都很熟悉了,用它可以很方便的实现,控件在不同的动作中,颜色等值的变化。这里我说一下TextView中的一些应用。
&&&&&& 我想大家都知道,Button按钮在源码上看是一种特殊的TextView,所以我们很多时候,按钮全是使用的TextView来完成,只要加一个android:clickable=&true&就可以了。
&&&&&& TextView在使用selector时,会有两种情况,一种就是正常的在TextView控件上来判断按下,焦点等动作的判断,另一种则是TextView外层控件的这些动作,然后将动作传回TextView.
&&&&&& 一,正常的在TextView控件上来判断按下,焦点等动作的判断
&&&&&& 这种相对简单,一般要修改控件的背景色和文字色,我们要用到两个xml文件。代码如下:
&&&&&& tbackground.xml&& 修改背景
&&&&&& &?xml version=&1.0& encoding=&utf-8& ?&
&selector xmlns:android=&/apk/res/android&&
&!-- 默认时的背景图片--&
&!--&item android:drawable=&@color/white& /&--&
&!-- 没有焦点时的背景图片 --&
&item android:state_window_focused=&false& android:drawable=&@color/white& /&
&item android:state_focused=&false& android:state_pressed=&true&
android:drawable=&@color/btnbackBlue& /&
&/selector&
&&&&& 这里要说明一点,大家看到了,我把默认时的背景图片(颜色)给注了,这是为什么呢,因为你把这条放在最前面,无论什么时候,它都会最先运行,它运行完了,程序就不会再往下运行了,所以下面写的全都没有了。如果你想设置默认值,请把这行代码,放到最下面。
&&&& ttextcolor.xml&& 修改文字
&&&& &?xml version=&1.0& encoding=&utf-8& ?&
&selector xmlns:android=&/apk/res/android&&
&!-- 没有焦点时的背景图片 --&
&item android:state_window_focused=&false& android:color=&@color/black& /&
&item android:state_focused=&false& android:state_pressed=&true&
android:color=&@color/white& /&
&!-- 默认时的背景图片--&
&item android:color=&@color/black& /&
&/selector&
&&& 文字的修改我就把默认值,放到了最后,这里也要说一下,背景我们要用android:drawable而文字的颜色要使用android:color,不然会报错,为什么?大家想想。哈哈。。。。
&&& &TextView
android:id=&@+id/txt_collection_cancel&
android:layout_width=&0dp&
android:layout_height=&fill_parent&
android:layout_weight=&1&
android:text=&取消&
android:textColor=&@drawable/ttextcolor&
android:gravity=&center&
android:background=&@drawable/tbackground&
android:clickable=&true&/&
&&&& 二,TextView外层控件的这些动作,然后将动作传回TextView.
&&&&&&&&&&&& 这种情况也常出现,我们一般会在外层加一个LinearLayout或是RelativeLayout。而我们会把点击的事件,给这个外层控件。这时候,你要修改的就是外层控件的背景,和TextView控件的文字颜色。这个时候,我们还用上面的方式,你会发现,TextView没有反应,为什么,因为它没有得到事件,这个时候,会用到一个属性就是
android:duplicateParentState它的官方解释是”如果设置此属性,将直接从父容器中获取绘图状态(光标,按下等)。&注意仅仅是获取绘图状态,而没有获取事件,也就是你点一下LinearLayout时Button有被点击的效果,但是不执行点击事件“。看下面的代码:
&RelativeLayout
android:id=&@+id/rela_collection_add&
android:layout_width=&fill_parent&
android:layout_height=&50dp&
android:background=&@drawable/tbackground&
android:clickable=&true&&
android:id=&@+id/line_collection_add&
android:layout_width=&fill_parent&
android:layout_height=&1dp&
android:background=&@color/gray&
android:layout_gravity=&center_vertical&
android:layout_alignParentBottom=&true&
android:id=&@+id/txt_collection_add&
android:layout_width=&fill_parent&
android:layout_height=&fill_parent&
android:text=&新建收藏夹&
android:textColor=&@drawable/ttextcolor&
android:textSize=&@dimen/ActionBar_title_size&
android:duplicateParentState=&true&
android:gravity=&center&
android:layout_above=&@+id/line_collection_add&
&/RelativeLayout&
我们在修改外层控件背景的同时,也在修改 TextView文字的颜色.
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:896588次
积分:10677
积分:10677
排名:第951名
原创:267篇
转载:123篇
评论:263条
(2)(2)(1)(1)(1)(3)(7)(6)(1)(6)(5)(4)(4)(1)(4)(4)(7)(5)(9)(1)(1)(2)(5)(7)(4)(2)(1)(3)(1)(4)(3)(4)(3)(2)(3)(3)(3)(4)(4)(5)(9)(4)(2)(5)(4)(2)(1)(1)(1)(1)(1)(2)(2)(7)(1)(3)(1)(6)(5)(3)(2)(4)(1)(2)(1)(2)(2)(8)(4)(9)(14)(7)(2)(1)(10)(2)(3)(5)(36)(5)(3)(7)(2)(1)(3)(3)(5)(2)(8)(3)(5)(7)(10)(3)(7)(6)& 开源中国(OSChina.NET) |
开源中国社区(OSChina.net)是工信部
指定的官方社区textView可否设置按下和焦点改变时让字体颜色发生变化_百度知道
textView可否设置按下和焦点改变时让字体颜色发生变化
提问者采纳
&&&&res/color/text_color_selector.xml&selector&xmlns:android=&&&&&&&!--&&item&android:state_selected=&true&&android:color=&#FFA500&&/&&&&&&item&android:state_focused=&true&&android:color=&#FFA500&&/&&--&&&&&&item&android:state_pressed=&true&&android:color=&#FFA500&&/&&&&&&item&android:color=&#6A5ACD&&/&&/selector&&TextView&&&&&&&&&&&&&&&&&&&&&&&&android:id=&@+id/tv_quit&&&&&&&&&&&&&&&&&&&&&&&&&android:layout_width=&wrap_content&&&&&&&&&&&&&&&&&&&&&&&&&android:layout_height=&wrap_content&&&&&&&&&&nbsp订害斥轿俪计筹袭船陋;&&&&&&&&&&&&&&&android:layout_marginRight=&15dip&&&&&&&&&&&&&&&&&&&&&&&&&android:textColor=&@color/text_color_selector&/&
资深电脑人
其他类似问题
为您推荐:
textview的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 webview 改变字体颜色 的文章

 

随机推荐