css设置table表格的边框为单线边框的几种方式
方式一、
先给整个table表格的外边框加上左边框和上边框
table {
width: 300px;
border-top: 1px solid #999;
border-left: 1px solid #999;
border-spacing: 0; /*去掉单元格间隙*/
}
再给table表格里的每个单元格添加下边框和右边框
table td {
padding: 5px 30px;
border-bottom: 1px solid #999;
border-right: 1px solid #999;
}
说明:
border-spacing 属性:可以设置相邻单元格的边框间的距离(仅用于“边框分离”模式),即 border-collapse 为 separate 时(separate 是默认值)。
当我们设置border-spacing: 0;时,就表示table表格中每个相邻单元格的边框间(水平和垂直方向)的距离都为0。
方式二、
table {
width: 300px;
border-collapse: collapse;
}
table td {
padding: 5px 30px;
border: 1px solid;
}
egret编译错误TypeError: Cannot read property ¹exitCode¹ of null
您正在使用白鹭编译器 5.2.33 版本
正在编译项目...
C:UsersUserAppDataRoamingEgretengine5.2.33 ools asksincrementCompile.js:81
if (!cmd.exitCode) {
^
TypeError: Cannot read property 'exitCode' of null
at onGotBuildCommandResult (C:UsersUserAppDataRoamingEgretengine5.2.33 ools asksincrementCompile.js:81:14)
at C:UsersUserAppDataRoamingEgretengine5.2.33 ools asksincrementCompile.js:74:36
at ServiceSocket.<anonymous> (C:UsersUserAppDataRoamingEgretengine5.2.33 oolsserviceindex.js:159:62)
at ServiceSocket.emit (events.js:198:13)
at ServiceSocket.onGotMessage (C:UsersUserAppDataRoamingEgretengine5.2.33 oolsserviceServiceSocket.js:42:14)
at ServiceSocket.onData (C:UsersUserAppDataRoamingEgretengine5.2.33 oolsserviceServiceSocket.js:39:14)
at Socket.<anonymous> (C:UsersUserAppDataRoamingEgretengine5.2.33 oolsserviceServiceSocket.js:18:57)
at Socket.emit (events.js:198:13)
at addChunk (_stream_readable.js:288:12)
at readableAddChunk (_stream_readable.js:265:13)
at Socket.Readable.push (_stream_readable.js:224:10)
at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)
解决方案:Egret Wing -> 项目 -> 清理
Flash Builder 代码补全辅助的设置
在Flash Builder写代码时默认情况下,只有输入“.”的时候才会出现代码提示,在输入其他字符若要显示提示,则需要按下快捷键Alt+/。
为了方便每次输入时都能看到相应的提示,可以进行如下设置:
1、进入菜单:窗口->首选参数,打开设置界面;
2、进入:Flash Builder->编辑器,勾选“使用其他自定义触发器”,并在下方的输入框中粘贴如下文本:
._abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
3、点击“确定”即可,不用重启Flash Builder,试试效果吧。
Unity某个类访问另一个类成员的几种方式
Unity中的脚本大多数都是绑定到某个游戏对象中,那么某个类要如何才能访问到另一个类的属性和方法?下面提供几种方式,供参考:
方式1:设置被调用类为单例
public class PlayerAttack : MonoBehaviour {
public static PlayerAttack _instance; // static关键字,单例模式
void Awake(){
_instance = this;// 确保在使用前已被初始化
}
public void TakeDamage(int damage){ // 可被外部调用的方法
}
}
public class Enemy : MonoBehaviour {
void Attack(){ // 当敌人攻击主角时
PlayerAttack._instance.TakeDamage(20);
}
}
方式2:设置被调用类的属性、方法为static
public class PlayerAttack : MonoBehaviour {
public static void TakeDamage(int damage){ // 可被外部调用的方法
}
}
方式3:使用GameObject的SendMessage()
public class PlayerAttack : MonoBehaviour {
public void TakeDamage(int damage){ // 可被外部调用的方法
}
}
public class Enemy : MonoBehaviour {
void Attack(){
// 主角模型的tag为PlayerBoy
GameObject p = GameObject.FindGameObjectWithTag("PlayerBoy");
p.SendMessage("TakeDamage", 20);
}
}
方式4:获取到某个对象的Script组件
这个脚本放在cube上
public class Score : MonoBehaviour {
public int allScore=100;
void Update () {
...
}
}
访问Score.allScore
public class Text : MonoBehaviour {
public GameObject Obj1;
void Start () {
Obj1 = GameObject.Find("Cube");
Score script=Obj1.GetComponent<Score>(); // 取对象的Script组件
Debug.Log(script.allScore);
}
}
VS找不到UnityEngine、UnityEngine.UI等引用的解决办法
当打开别人的项目或者自己的项目在其他电脑上打开时,VS中可能会出现找不到Unity库的问题,这往往是由于不同电脑中Unity安装目录不相同导致的。会出现下图所示的情况:
打开某个类后也会出现找不到引用类的情况,如
要解决这个问题就得让VS能正确找到每个引用的位置,可以有3种方法:
一、手动在VS中添加引用
如下图所示,首先得找到dll文件所在的位置,才能导入。这种方式比较繁琐。
二、Unity中设置
如下图所示,先把脚本编辑器改成MonoDevelop,然后用MonoDevelop随便打开一个脚本,打开后可以关闭MonoDevelop
再把脚本编辑器改成VS,
再用VS打开脚本的时候发现引用正常了
三、修改配置文件
用文本编辑器打开工程目录下面的 Assembly-CSharp.csproj、Assembly-CSharp-Editor.csproj 两个文件,对里面的所有不正确的路径进行修改即可
总结:
其实方式一、二最终都是要修改 Assembly-CSharp.csproj、Assembly-CSharp-Editor.csproj 这两个配置文件,只是比方式三更可视化一些。方式二最简单,是利用MonoDevelop来自动修改上述配置文件,但是如果没有安装MonoDevelop或者采用该方式失败的时候就只有改用其他方式了。总之,不管使用哪种方式,适合自己的就是最好的,每个人都有不同的爱好。
Flash Builder链接了外部资源后打不开怎么办?
假设该项目链接了两个外部目录,分别为:
H:/Helloworld/war
H:/Helloworld/map
如图:
但是如果上面两个目录下面的文件非常多,那么就有可能导致Flash Builder卡死,甚至奔溃。那么在强制退出之后再重启时可能会由于内存不足而不能打开Flash Builder了,这时怎么办?这时有两种选择:
一、删除项目目录下所有Flash Builder配置文件,重新建立项目
选中下面的目录或文件删除,再打开Flash Builder,此时项目在Flash Builder中找不到了,需要重新建立一个项目。
二、修改配置文件
1、用文本编辑器打开.actionScriptProperties,修改蓝色框框中的内容
修改后变成:
2、用文本编辑器打开.project,删除下面的内容
3、重新启动Flash Builder就正常了,可以看到连接的内容已经不见了,如果需要可以重新链接,但最好使用完成后在关闭Flash Builder之前取消链接,以免下次不能正常打开Flash Builder。
LayaAir提示:版本不匹配!全局tsc(2.7.2)!=VS Code的语言服务(2.1.5)。可能出现不一致的编译错误
LayaAir编译时提示:版本不匹配!全局tsc(2.7.2)!=VS Code的语言服务(2.1.5)。可能出现不一致的编译错误
这个错误意思是VS Code内置的TypeScript与本地安装的TypeScript版本号不匹配;
在cmd窗口输入:tsc -v,发现当前本地的TypeScript版本号是2.7.2
为此,需要修改本地TypeScript版本号为2.1.5,在cmd中输入下面的命令重新安装下就好了:
npm install -g typescript@2.1.5
重新查看版本号,发现已经改过来了。
重启LayaAir就正常了。
分享两个实用的股票数据接口
一、搜狐(推荐)
可查询任意时间区间,起始时间不受限制,api为:
http://q.stock.sohu.com/hisHq?code=cn_000858&start=20180101&end=20181231&stat=1&order=D&period=d&callback=historySearchHandler&rt=jsonp
参数说明:
code:股票代码
start:开始日期
end:结束日期
返回json数据,每天1条数据,下面是其中1天:
["2018-03-09","77.30","77.10","0.20","0.26%","76.18","78.39","245529","189421.42","0.65%"]
分别表示:
时间、开盘价、收盘价、涨跌金额、涨幅、最低价、最高价、成交量、成交金额、换手率
二、新浪
最多只能获取最近1023个节点的数据(大概最近3个半月)
http://money.finance.sina.com.cn/quotes_service/api/json_v2.php/CN_MarketData.getKLineData?symbol=sz002095&scale=60&ma=no&datalen=1023
参数说明:
symbol:股票代码
datalen:节点个数,最大为1023,大于此值也最多只显示最近的1023个
返回json数据,每天有4条数据(每小时1条,若要取当天收盘数据,就是对应4条中的最后一条),下面是其中1天:
{day:"2018-03-09 10:30:00",open:"44.520",high:"47.500",low:"44.000",close:"47.200",volume:"3105149"},
{day:"2018-03-09 11:30:00",open:"47.200",high:"49.150",low:"46.790",close:"49.150",volume:"3982161"},
{day:"2018-03-09 14:00:00",open:"49.150",high:"49.150",low:"49.150",close:"49.150",volume:"1161098"},
{day:"2018-03-09 15:00:00",open:"49.150",high:"49.150",low:"49.150",close:"49.150",volume:"253529"}
分别表示:
时间、开盘价、最高价、最低价、收盘价、成交量
ps:由此可见无论是时间跨度还是数据量,都是搜狐的接口更好,推荐使用
C#数组初始化的3种方式
C#数组的初始化有3种方式,方便在不同的场合选择不同的方式来初始化,下面将举例说明:
(1)一维数组
初始化的3种方式:
①int[] arr = new int[2];
arr[0] = 1;
arr[1] = 2;
②int[] arr = new int[]{1, 2};
③int[] arr = {1, 2};
(2)二维(或多维)数组
本例以二维数组为例,多维数组类推,初始化的3种方式:
①int[,] arr = new int[2, 3];
arr[0, 1] = 1;
arr[0, 2] = 2;
arr[0, 3] = 3;
arr[1, 1] = 11;
arr[1, 2] = 22;
arr[1, 3] = 33;
②int[,] arr = new int[,]{{1, 2, 3}, {11, 22, 33}};
③int[,] arr = {1, 2, 3}, {11, 22, 33};
(3)不规则数组
int[][] arr = new int[2][];
arr[0] = new int[4];
arr[1] = new int[5];
然后要对子数组进行初始化,可使用上述(1)(2)中的3种方式进行,如:
arr[0][0] = 1;
arr[0][1] = 2;
...
Unity3d之Hinge Joint组件
链接两个物体,两个物体的运动互相牵连;
此处两个物体均需要有Rigidbody组件;假设有A、B两个新物体,均没有Rigidbody组件,则:
(1)若给A添加Hinge Joint组件,会自动添加Rigidbody组件;
(2)当给A链接B时,若B没有Rigidbody组件,将不会出现在选择列表中,无法链接;
(3)当A已经链接B时,若尝试删除A的Rigidbody组件,则会提示无法删除,必须要先手动移除Hinge Joint组件,才能删除Rigidbody组件;
(4)当A已经链接B时,若删除B的Rigidbody组件,则A中的链接源会显示已丢失;
(5)也可以给B新增链接到C,此时3个物体的运动均受到牵连;当然B也可以链接到A(由于A已链接到B,所以这个链接是多余的,效果不受影响);
(6)若已给B添加Hinge Joint组件,但没设置链接源,则A、B均保持静止;
(7)A、B物体的Use Gravity均不勾选时,A、B均保持静止,否则有一个勾选,两个物体均会运动;
- 默认分类(20)
- J2EE(25)
- Java(56)
- PHP(55)
- SEO(10)
- 网页设计(20)
- 网站建设(37)
- 数据库(7)
- JavaScript(17)
- JQuery(6)
- MySQL(20)
- SQL Server(6)
- Access(1)
- Oracle(6)
- office(6)
- Dreamweaver(4)
- Photoshop(12)
- Flash(9)
- Fireworks(13)
- CSS(14)
- HTML(4)
- .NET(7)
- ASP(2)
- DB2(1)
- Ajax(2)
- Linux(12)
- Struts(7)
- Hibernate(8)
- Spring(2)
- Jsp(22)
- Asp(8)
- C#(3)
- C++(1)
- 网络安全(5)
- 软件工程(7)
- XML(1)
- English(2)
- 计算机等级考试(2)
- 计算机病毒(4)
- 个人日志(76)
- 互联网(15)
- ActionScript(10)
- Android(3)
- 数据结构与算法(1)
- 游戏策略(3)
- 美文翻译(2)
- 编程开发(19)
- 计算机应用(4)
- 计算机(10)
- Unity3d(6)
- 其他(1)
- egret(1)