[FMX]获取控件样式中的指定项目以便进行调节

2017-03-26 • C++ BuilderDelphi教程 • 暂无评论 • swish •浏览 650 次

FMX 的样式丰富了我们的设计,但我们在运行时想改变特定的Style的属性却没有直接的办法,下面的函数提供了一种途径,让你找到特定的样式,然后进行处理。

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function FindStyleByName(AParent:TFMXObject;AName:String):TFMXObject;
  var
    I: Integer;
    AObj:TFMXObject;
  begin
  Result:=nil;
  for I := 0 to AParent.ChildrenCount-1 do
    begin
    AObj:=AParent.Children[I];
    if AObj.StyleName=AName then
      Result:=AObj
    else
      Result:=FindStyleByName(AObj,AName);
    if Assigned(Result) then
      break;
    end;
  end;

用法示例:

 
1
2
3
4
5
6
7
procedure TForm1.btnLeftApplyStyleLookup(Sender: TObject);
var
  AText:TButtonStyleTextObject;
begin
AText:=FindStyleByName(Sender as TFMXObject,'text') as TButtonStyleTextObject;
AText.NormalColor:=TAlphaColors.White;
end;

在 btnLeft 的 OnApplyStyleLookup 里,我们将按钮的颜色改变为白色。

FMX

原创文章转载请注明:转载自:[FMX]获取控件样式中的指定项目以便进行调节

[FMX]获取控件样式中的指定项目以便进行调节的更多相关文章

  1. WPF 获取控件模板中的控件

    DG是控件名称public T GetVisualChild<T>(DependencyObject parent, Func<T, bool> predicate) wher ...

  2. js获取控件位置以及不同浏览器中的差别

    js获取控件位置(坐标位置)在不同浏览器中的差别. //获取坐标位置 function getpos(e) { var t=e.offsetTop; var l=e.offsetLeft; var h ...

  3. js中使用控件名和数组下标方式获取控件的值时失败

    在做界面展示时涉及到表单行项目的增加和删除时,我们一帮都使用js的脚本实现表单行的增加和删除,那么在进行表单的提交的时我们会再页面上进行提交数据的初步校验,进行数据的初步校验时,就要动态获取控件的值. ...

  4. Android自动化测试中AccessibilityService获取控件信息(1)

    Android自动化测试中AccessibilityService获取控件信息(1) 分类: android自动化测试2014-03-24 15:31 3455人阅读 评论(16) 收藏 举报 and ...

  5. WPF线程中获取控件的值和给控件赋值

    WPF中使用线程操作控件,按平常的操作方法操作的话会报异常:调用线程无法访问此对象,因为另一个线程拥有该对象.所以我们要使用Dispatcher类的BeginInvoke()与Invoke()方法.B ...

  6. Android自动化测试中AccessibilityService获取控件信息(2)-三种方式对比

    Android自动化测试中AccessibilityService获取控件信息(2)-三种方式对比   上一篇文章: Android自动化测试中AccessibilityService获取控件信息(1 ...

  7. android 获取屏幕的高度和宽度、获取控件在屏幕中的位置、获取屏幕中控件的高度和宽度

    (一)获取屏幕的高度和宽度 有两种方法: 方法1: WindowManager wm = (WindowManager) getContext().getSystemService(Context.W ...

  8. c#在WinForm和WebForm中根据控件和属性名获取控件属性值

    在WinForm中开发的过程中,所有继承了Control控件,在使用多线程的时候,就需要通过一个通用的方法来设置界面上的控件的属性. delegate void DelegateSetControl( ...

  9. Android 在OnCreate()中获取控件高度与宽度

    试过在OnCreate()中获取控件高度与宽度的童鞋都知道,getWidth()与getHeight()方法返回是0,具体原因 看一下Activity的生命周期 就会明白. 上代码: 方法一: int ...

随机推荐

  1. MySQL Workbench常用快捷键

    执行当前SQL语句(即鼠标所在的SQL语句,以 ; 结尾) Ctrl + Enter 执行选中的SQL语句(或执行所有SQL语句) Ctrl + Shift + Enter

  2. struts2升级

    http://www.blogjava.net/ldwblog/archive/2013/10/14/404944.html

  3. python SQLAlchemy对象映射和json.dumps无法序列化问题解决

    from flask import Flask from flask_sqlalchemy import SQLAlchemy import Config2 import pymysql import ...

  4. Linux修改/etc/profile配置错误command is not found自救方法

    export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

  5. spring mvc 提交表单汉字乱码

    修改web.xml添加如下信息 <filter> <filter-name>characterEncodingFilter</filter-name> <fi ...

  6. python之排列组合测试

    # test permutations and combinations import itertools as it for i in it.combinations('abcd',2): prin ...

  7. Linux CPU Hotplug CPU热插拔

    http://blog.chinaunix.net/uid-15007890-id-106930.html   CPU hotplug Support in Linux(tm) Kernel Linu ...

  8. 正则表达式,re模块

    一.正则表达式 正则表达式 : 匹配字符串,一般用于爬取数据. 正则表达式查询网址 : http://tool.chinaz.com/regex/?qq-pf-to=pcqq.group 1.元字符( ...

  9. 2019.01.26 codeforces 632E. Thief in a Shop(生成函数)

    传送门 题意简述:给nnn个物件,物件iii有一个权值aia_iai​,可以选任意多个.现在要求选出kkk个物件出来(允许重复)问最后得到的权值和的种类数. n,k,ai≤1000n,k,a_i\le ...

  10. 2018.10.29 洛谷P4129 [SHOI2006]仙人掌(仙人掌+高精度)

    传送门 显然求出每一个环的大小. Ans=∏i(siz[i]+1)Ans=\prod_i(siz[i]+1)Ans=∏i​(siz[i]+1) 注意用高精度存答案. 代码: #include<b ...