14.类资源

以文件形式存储的类被视为 resources。必须从磁盘加载它们,才能在其他类中访问它们。这可以使用 load 或 preload 函数来完成(见下面)。加载类资源的实例化是通过调用类对象上的 new函数来完成的:

# Load the class resource when calling load().
var my_class = load("myclass.gd") # Preload the class only once at compile time. const MyClass = preload("myclass.gd") func _init(): var a = MyClass.new() a.some_function() 

导出

类成员可以导出。这意味着它们的值与它们所连接的资源一起被保存(例如 scene)。它们还可以在属性编辑器中进行编辑。导出是通过使用“导出”关键字:

extends Button

export var number = 5 # Value will be saved and visible in the property editor. 

导出的变量必须初始化为常量表达式,或者以导出关键字参数的形式具有导出提示(参见下面)。

导出成员变量的基本好处之一是使它们在编辑器中可见并可编辑。通过这种方式,艺术家和游戏设计师可以修改影响程序运行的值。为此,提供了一种特殊的导出语法。

# If the exported value assigns a constant or constant expression,
# the type will be inferred and used in the editor.

export var number = 5 # Export can take a basic data type as an argument, which will be # used in the editor. export(int) var number # Export can also take a resource type to use as a hint. export(Texture) var character_face export(PackedScene) var scene_file # Integers and strings hint enumerated values. # Editor will enumerate as 0, 1 and 2. export(int, "Warrior", "Magician", "Thief") var character_class # Editor will enumerate with string names. export(String, "Rebecca", "Mary", "Leah") var character_name # Named Enum Values # Editor will enumerate as THING_1, THING_2, ANOTHER_THING. enum NamedEnum {THING_1, THING_2, ANOTHER_THING = -1} export (NamedEnum) var x # Strings as Paths # String is a path to a file. export(String, FILE) var f # String is a path to a directory. export(String, DIR) var f # String is a path to a file, custom filter provided as hint. export(String, FILE, "*.txt") var f # Using paths in the global filesystem is also possible, # but only in tool scripts (see further below). # String is a path to a PNG file in the global filesystem. export(String, FILE, GLOBAL, "*.png") var tool_image # String is a path to a directory in the global filesystem. export(String, DIR, GLOBAL) var tool_dir # The MULTILINE setting tells the editor to show a large input # field for editing over multiple lines. export(String, MULTILINE) var text # Limiting editor input ranges # Allow integer values from 0 to 20. export(int, 20) var i # Allow integer values from -10 to 20. export(int, -10, 20) var j # Allow floats from -10 to 20, with a step of 0.2. export(float, -10, 20, 0.2) var k # Allow values y = exp(x) where y varies between 100 and 1000 # while snapping to steps of 20. The editor will present a # slider for easily editing the value. export(float, EXP, 100, 1000, 20) var l # Floats with Easing Hint # Display a visual representation of the ease() function # when editing. export(float, EASE) var transition_speed # Colors # Color given as Red-Green-Blue value export(Color, RGB) var col # Color is RGB. # Color given as Red-Green-Blue-Alpha value export(Color, RGBA) var col # Color is RGBA. # Another node in the scene can be exported, too. export(NodePath) var node 

必须注意的是,即使脚本在编辑器中没有运行,导出的属性仍然是可编辑的(参见下面的“工具”)。

转载于:https://www.cnblogs.com/empist/p/10199253.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: cskin是一款针对Android系统进行界面主题定制的开源项目,其源码版本为16.1.14。cskin主要目的是帮助开发者在不改变原始代码的情况下,实现界面样式的个性化定制。 cskin的源码包括了各个界面元素的渲染代码、资源文件替换代码以及主题管理代码等。在16.1.14版本中,源码经过一系列的优化和改进,提供了更加稳定和高效的功能。 首先,cskin的渲染代码使用了一套高效的绘制引擎,能够快速准确地绘制自定义的界面元素。这使得开发者可以根据自己的需求设计和绘制各种按钮、控件和背景等,实现自定义的界面外观。 其次,cskin提供了资源文件替换功能,使得开发者可以根据需要动态更换应用程序中的资源文件。这包括了图片、文字、颜色等各种资源,可以根据用户的主题选择或者系统设置,动态切换应用的外观。 最后,cskin还实现了主题管理功能,开发者可以根据不同的主题创建不同的样式,实现不同场景下的个性化界面。这样,用户可以根据自己的喜好选择不同的主题,提升应用的用户体验。 总的来说,cskin 16.1.14源码为开发者提供了一套完善的界面主题定制解决方案,使得开发者可以快速、灵活地实现界面的个性化定制。通过cskin,开发者可以为Android应用程序提供更加精美、独特的外观,提升用户体验。 ### 回答2: cskin 16.1.14源码是一段关于皮肤定制的代码。cskin是一个开源的皮肤定制框架,其中16.1.14是该框架的版本号。 这段源码实现了皮肤定制功能。它使用了一种特定的语法来描述界面元素的外观样式,并根据用户选择的皮肤进行动态加载和切换界面的外观。 源码主要分为三个部分。第一个部分是皮肤描述文件,它是一个以特定格式编写的文本文件,描述了界面元素的外观样式,如颜色、字体、背景等。第二个部分是皮肤加载器,负责根据用户选择的皮肤加载对应的皮肤描述文件,并将样式应用到界面元素上。第三个部分是界面元素的样式应用,它将加载的皮肤描述文件中定义的样式应用到对应的界面元素上,以实现界面的定制。 在源码中,我们可以看到一些关键的函数和。例如,loadSkin函数用于加载皮肤描述文件,它通过解析文件内容获取各个界面元素的样式,并将其存储在内存中。applyStyles函数用于将加载的样式应用到界面元素上,它会遍历界面元素树,根据其标识和已加载的样式进行匹配,并将相应的样式应用到界面元素上。 使用cskin 16.1.14源码,我们可以方便地定制界面的外观样式。它可以帮助开发者快速实现皮肤定制功能,使用户可以根据个人喜好选择不同的皮肤风格。同时,开发者也可以根据需求灵活定制皮肤描述文件,以满足不同用户的需求。 总之,cskin 16.1.14源码是一个实现皮肤定制功能的开源框架,通过加载和应用皮肤描述文件,可以实现界面的外观定制。它可以帮助开发者快速定制和切换皮肤,提升用户体验。 ### 回答3: cSkin 16.1.14是一个开源的软件库,用于构建图形用户界面(GUI)。它提供了一系列的功能和工具,帮助开发人员创建和定制各种窗口、控件和美化界面。 cSkin 16.1.14的源码是以C++语言编写的,它包含了各种用于绘制、渲染和处理界面元素的函数和。源码中的每一行代码都经过精心设计和编写,以实现高性能和良好的可维护性。 通过阅读cSkin 16.1.14的源码,开发人员可以深入了解该库的工作原理和内部机制。他们可以学习如何使用cSkin的API来创建和管理界面元素,以及如何应用不同的主题和样式。此外,源码中还包含了一些示例和演示程序,帮助开发人员更好地理解和应用cSkin。 cSkin 16.1.14的源码的开放性意味着任何人都可以自由使用、修改和分发它。这使得开发人员可以根据自己的需求和喜好进行定制和扩展。他们可以添加新的功能或修复现有的 bug,以满足特定项目的要求。 总之,cSkin 16.1.14的源码是一个宝贵的资源,对于希望开发具有吸引力和个性化界面的软件的人来说是一个很好的学习和参考材料。它提供了丰富的功能和灵活性,可以帮助开发人员快速构建出令人印象深刻的GUI应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值