|
|
2007年11月28日
Dusy 20071128
在IE6中,如果window.open一个子页面后,再关闭父页面,如果直接window.close()父页面,会弹出一个关闭确认的消息框,怎么去掉这个烦人的东西呢?以登录窗口为例,在login页面可以这样写:
Window.open(‘mian.aspx’,’main’,’’);//打开主页面
Window.opener=null;//加上这句话,就去掉关闭确认的消息框了
Window.close();
但在IE7中,上面的办法就不灵了。查了些资料,终于拿下这个顽症:
Window.open(‘mian.aspx’,’main’,’’);//打开主页面
var obj=window.open('close.html','_self'); //解决问题的关键
obj.opener =window;
obj.focus();
这个顽症的药方是在打开主页面后,再打开一个close.html,并且name参数一定是’_self’,我们把window.close()这句话写在close.html的script中,再次运行,烦人的关闭确认消息框不见了。
研究发现,close.html是覆盖了login.aspx这个页面的,再关闭close.html,当然也就把login.aspx关闭了.
2007年11月27日
沉痛悼念中国石油(601857),
中国股市的绩优股、久经考验的忠诚的大盘一线权重股、伟大的抗涨斗士、今年活跃在股坛引领股市暴跌数十天的著名领跌股中国石油(601857),因在2007年11月5日午夜受到半夜鸡叫的惊扰,又于2007年11月19日受到老流氓的恐吓,终于积郁成疾,反弹无效,于2007年X月XX日15时00分在上海证券交易所以疯狂跌停的方式,结束了自己的生命,享年18.8价岁。
中国石油的一生,是光辉的一生,是战斗的一生,是为无数股民谋福利的一生。今天设在上海证券交易所的中国石油的灵堂庄严肃穆,哀乐齐鸣。灵堂的正上方悬挂着“沉痛悼念中国石油”的横幅,下方是大小庄家敬献的花圈,中国石油躺在苍翠的松柏丛之中,身上盖着翠绿的跌停大旗,安详地闭上了K线眼睛。中国石油当日的盘口走势图被摆放在灵堂的显耀位置,供各界股民瞻仰。
下午15时30分的中国石油悼念仪式正式开始,因愤怒而情绪失控的全体股民同时高呼“操他大爷”、“宰了那只鸡”、“去死”等口号对中国石油表示深深地哀悼。悼念仪式由带头大哥888、治丧委员会副主任周二毛等主持。
前来和中国石油作最后告别的有中石化,中神华,万科,宝钢,联通以及平安,国寿,工行,中行,招行,民生银行,建行,交行等一大批跌停股。在中国石油大幅下跌和跌停期间,通过以同样放量下跌等各种方式来表示慰问的还有ST浪莎、STTCL、ST吉炭、ST金杯等大量ST股。
港股、日股、美国纳斯达克以及中国石油的生前友好埃克森-美孚,壳牌,道达尔等同行也发来唁电、唁函,对其不幸跌停逝世表示沉痛地哀悼。
下午5时许,运载中国石油的灵车缓缓的驶向吴淞口的宝山公墓
2007年10月17日
eval可以将字符串生成语句执行,和SQL的exec()类似。
eval的使用场合是什么呢?有时候我们预先不知道要执行什么语句,只有当条件和参数给时才知道执行什么语句,这时候eval就派上用场了。举个例子:
我们要做一个function(),功能是输入网页中两个个对象的名称,然后程序就将这两个对象的值联接起来输出。
function output(a,b)
{
var tmpa,tmpb;
tmpa=document.all.a.value;
tmpb=document.all.b.value;
document.write(tmpa+tmpb);
}
output('input1','input2');
这样你执行的时候就会提示错误“document.all.a不是对象”以及“document.all.b不是对象”。原来javascript把a和b当成对象名称了,怎样能让javascript把a里面的值作为对象名称呢?这时候就要用eval了,把代码改成这样:
function output(a,b)
{
var tmpa,tmpb;
tmpa=eval("document.all."+a+".value");
tmpb=eval("document.all."+b+".value");
document.write(tmpa+tmpb);
}
output('input1','input2');
这样javascript就会先取出a,b的值,然后和前面的document.all.以及后面的.value组合运行,于是就可以
顺利取出input1和input2的值.
2007年8月24日
在AccessImport项目中,所使用的DataSet都是由SqlDataAdapter生成的(不是动态)。数据表发现很多重复数据,追了很久才查到原因:DataSet在从新写入数据时没有清空,如果此时Fill的话,只是在以前的数据后面追加数据,如果该表没有主键,在insert的时候就会再次写入以前的数据。所以建议在使用sqlDataAdapter.Fill(DataSet)之前,先把DataSet清空一下:DataSet.clear()。在使用完之后,最好把DataSet的资源释放掉:DataSet.dispose()。
2007年8月8日
VS2005 常用快捷键
Shift+Alt+Enter: 切换全屏编辑  Ctrl+B,T / Ctrl+K,K: 切换书签开关  Ctrl+B,N / Ctrl+K,N: 移动到下一书签  Ctrl+B,P: 移动到上一书签  Ctrl+B,C: 清除全部标签  Ctrl+I: 渐进式搜索  Ctrl+Shift+I: 反向渐进式搜索 Ctrl+F: 查找 Ctrl+Shift+F: 在文件中查找
F3: 查找下一个  Shift+F3: 查找上一个 Ctrl+H: 替换  Ctrl+Shift+H: 在文件中替换  Alt+F12: 查找符号(列出所有查找结果)  Ctrl+Shift+V: 剪贴板循环  Ctrl+左右箭头键: 一次可以移动一个单词  Ctrl+上下箭头键: 滚动代码屏幕,但不移动光标位置。  Ctrl+Shift+L: 删除当前行  Ctrl+M,M: 隐藏或展开当前嵌套的折叠状态  Ctrl+M,L: 将所有过程设置为相同的隐藏或展开状态  Ctrl+M,P: 停止大纲显示  Ctrl+E,S: 查看空白  Ctrl+E,W: 自动换行  Ctrl+G: 转到指定行  Shift+Alt+箭头键: 选择矩形文本  Alt+鼠标左按钮: 选择矩形文本  Ctrl+Shift+U: 全部变为大写  Ctrl+U: 全部变为小写   代码快捷键   Ctrl+J / Ctrl+K,L: 列出成员  Ctrl+Shift+空格键 / Ctrl+K,P: 参数信息  Ctrl+K,I: 快速信息  Ctrl+E,C / Ctrl+K,C: 注释选定内容  Ctrl+E,U / Ctrl+K,U: 取消选定注释内容  Ctrl+K,M: 生成方法存根  Ctrl+K,X: 插入代码段  Ctrl+K,S: 插入外侧代码   窗口快捷键   Ctrl+W,W: 浏览器窗口 Ctrl+W,S: 解决方案管理器
Ctrl+W,C: 类视图
Ctrl+W,E: 错误列表
Ctrl+W,O: 输出视图
trl+W,P: 属性窗口 Ctrl+W,T: 任务列表 Ctrl+W,X: 工具箱
Ctrl+W,B: 书签窗口 Ctrl+W,U: 文档大纲  Ctrl+D,B: 断点窗口  Ctrl+D,I: 即时窗口  Ctrl+Tab: 活动窗体切换  Ctrl+Shift+N: 新建项目  Ctrl+Shift+O: 打开项目  Ctrl+Shift+S: 全部保存 Ctrl+Shift+A: 新建项
 Ctrl+Shift+V: 剪贴板循环  Ctrl+左右箭头键: 一次可以移动一个单词  Ctrl+上下箭头键: 滚动代码屏幕,但不移动光标位置。  Ctrl+Shift+L: 删除当前行  Ctrl+M,M: 隐藏或展开当前嵌套的折叠状态  Ctrl+M,L: 将所有过程设置为相同的隐藏或展开状态  Ctrl+M,P: 停止大纲显示  Ctrl+E,S: 查看空白  Ctrl+E,W: 自动换行  Ctrl+G: 转到指定行  Shift+Alt+箭头键: 选择矩形文本  Alt+鼠标左按钮: 选择矩形文本  Ctrl+Shift+U: 全部变为大写  Ctrl+U: 全部变为小写
CTRL + SHIFT + B生成解决方案 CTRL + F7 生成编译 CTRL + O 打开文件 CTRL + SHIFT + O打开项目 CTRL + SHIFT + C显示类视图窗口 F4 显示属性窗口 SHIFT + F4显示项目属性窗口 CTRL + SHIFT + E显示资源视图 F12 转到定义 CTRL + F12转到声明 CTRL + ALT + J对象浏览 CTRL + ALT + F1帮助目录 CTRL + F1 动态帮助 F1 帮助 SHIFT + F1当前窗口帮助 CTRL + ALT + F3帮助-搜索 SHIFT + ALT + ENTER全屏显示 CTRL + -向后定位 CTRL + SHIFT + -向前定位 CTRL + F4关闭文档窗口 CTRL + PAGE DOWN光标定位到窗口上方 CTRL + PAGE UP光标定位到窗口下方 CTRL + F6 CTRL + TAB下一个文档窗口 CTRL + SHIFT + F6 CTRL + SHIFT + TAB上一个文档窗口 ALT + F6下一个面板窗口 CTRL + K, CTRL + L取消remark CTRL + K, CTRL + C注释选择的代码 CTRL + K, CTRL + U取消对选择代码的注释 CTRL + M, CTRL + O折叠代码定义 CTRL + M, CTRL + L展开代码定义 CTRL + DELETE删除至词尾 CTRL + BACKSPACE删除至词头 SHIFT + TAB取消制表符 CTRL + U转小写 CTRL + SHIFT + U转大写 CTRL + SHIFT + END选择至文档末尾 CTRL + SHIFT + HOME选择至文档末尾开始 SHIFT + END选择至行尾 SHIFT + HOME选择至行开始处 SHIFT + ALT + END垂直选择到最后尾 SHIFT + ALT + HOME垂直选择到最前面 CTRL + A全选 CTRL + W选择当前单词 CTRL + SHIFT + PAGE UP选择至本页前面 CTRL + SHIFT + PAGE DOWN选择至本页后面 CTRL + END文档定位到最后 CTRL + HOME文档定位到最前 CTRL + G转到… CTRL + K, CTRL + P上一个标签 CTRL + K, CTRL + N下一个标签 CTRL + J列出成员 CTRL + PAGE DOWN下一个视图 CTRL + B格式-粗体 CTRL + SHIFT + T格式-文字缩进
调试快捷键
F6: 生成解决方案 Ctrl+F6: 生成当前项目 F7: 查看代码 Shift+F7: 查看窗体设计器 F5: 启动调试 Ctrl+F5: 开始执行(不调试) Shift+F5: 停止调试 Ctrl+Shift+F5: 重启调试 F9: 切换断点 Ctrl+F9: 启用/停止断点 Ctrl+Shift+F9: 删除全部断点 F10: 逐过程 Ctrl+F10: 运行到光标处 F11: 逐语句
F12:转到定义 Shift+F12查找所有引用
2007年8月3日
一周又悄然过去了。至所以没有用流逝两个字,是因为无所谓流逝不流逝,时间总是有意义的,即使盯着秒针转,也有它存在的理由。周一改了两个问题给客户发了过去。接下来的三天是查数据,截至到今天上午11:30,也就是去吃饭之前还没有找出问题在哪,或许问题不在我这边。客户发了新的邮件:using Employees table to login ScoreCard.花了半下午的时间弄好给他发了过去。其间又看看搜狐财经,真是一个不错的地方。从5.25买第一只基金以来,截至到昨天已经挣了997大元。不过今天又大涨100多点,又有米数了。投资理财正式尝到甜头。宁宁前几天还打听基金的事情,小伙也按耐不住了。只可惜老驴没有稳住,过早的卖了。看来即便是屁股大,也不一定能沉得住气。我还是要谢谢洁洁,我的坚强后盾。 刚才用了rad.ajaxpanel,总调整不好布局。不过效果倒是实现了,赞一个。以前手工写javascript,麻烦了1.5倍。 明天还要找房子,学游泳。旱鸭子学游泳也够难的,装备都买好一个月了。
ok,just enjoy a nice weekend. --Dusy
2007年7月30日
在维护AccessImport的程序中,发现内存消耗很大。跟踪发现很大一部分原因是dataset消耗的。.net虽然提供了内存的自动回收机制,但显示的释放一些资源还是有必要的。释放资源的方法有两种方法:
1、显式调用dispose()
说明:就是在使用完一个dataset后(或其他消耗内存比较大的控件^_^),调用以下dispose()方法.
2、使用using语句块
说明:实例话一个变量的时候,使用using语句,在对该变量操作完成之后,自动调用dispose释放资源.例如:
public DataSet Rt_DataSet(string str_Sql) { using (DataSet ds = new DataSet()) { try { SqlDataAdapter ada = new SqlDataAdapter(str_Sql, conn); ada.Fill(ds, "dt"); } catch (Exception ex) {
} return ds; } }
2007年7月27日
2007年7月26日
|