第一篇:罗氏VB6监理总结(正)
上海市工程设备监理公司
SHANGHAI CONSTRUCTION & EQUIPMENT SURVEILLANCE MANAGEMENT CO.
监
工程名称 建设单位 承建单位 设计单位 监理单位
理 工 作 总 罗氏新亚VB6技改工程项目
罗氏新亚(上海)维生素有限公司 克瓦纳(英国)工程公司 上海医药工业设计院
上海市工程设备监理公司 编制人 何奋明
审核人 刘海平批准人 马自强
结一.工程概况
罗氏新亚维生素B6工程项目位于浦东新区金海路东端,即罗氏新亚维生素有限公司的厂区内。项目共由六个单位工程组成,分别为生产车间大楼;溶媒、酸碱贮罐区;消防水池泵房;门卫1及地磅;门卫2及大门;室外总体工程。
本项目的主要单位工程是生产车间大楼,其建筑面积8026平方米,建筑高度21.50M,基础由砼桩、承台及基础梁组成。建筑物分为八个区域从基础到上部结构各自独立,车间主楼座落在两边,为三层框架结构;中间辅楼为六层的板墙混凝土结构,是生产和生活辅助用房;门窗为铝合金窗、钢质防火门;内墙面为混合砂浆底苯丙涂料面层,外墙面为灰白两色面砖,屋面采用氯化聚乙烯橡胶防水卷材。
二个门卫室是在原地址上建造的,为单层房屋。
消防水池及泵房单位工程分为水池和泵房两部分组成,位于老厂区的最北端,总建筑面积275平方米。水池和泵房之间设沉降缝。消防水池分上下两层,上层为消防水箱、下层为雨水、污水池,埋深-6.900米。消防水池的深基坑支护施工方案委托同济大学建筑设计院专业设计,系采用钻孔灌注桩和树根桩、压密注浆加水平砼支撑的围护体系。
贮罐区构筑物分为溶媒罐区(长*宽23.5M*13.32M)和酸碱罐区(长*宽19.34M*13.32M),贮罐构筑物为砼结构,由砼底板、壁板和管架柱等组成;厂区管架由原锅炉房至生产车间大楼等处,为混凝土基础及柱子。
本工程项目开工依次顺序是:生产车间大楼;贮罐区;门卫1、2及大门、地磅;消防水池泵房;厂区总体管线、管架及道路。工程 1 项目从1999年3月6日正式开工,进行VB6生产车间大楼的桩基施工,至2000年底竣工。2001年 月通过质检站的竣工验收。
二.项目监理机构 1.项目监理机构人员名单 总监理工程师:刘海平副总监兼土建监理师:何奋明 土建监理师:顾坤权 电气监理师:郑汉民 管道监理师:肖连中 设备监理师:倪学良 王岳
2.投入的监理设施
水准仪 经纬仪 钢卷尺 电脑 质量检测系列工具等
三.履行合同情况
1. 根据委托合同的要求,监理工作范围:整个工程过程中的质量控制,并在进度、成本、安全管理方面及保修期间为业主提供服务。2. 监理依据: 监理委托合同
业主与总承包的建筑安装合同及 分包合同等 工程设计施工图纸、设计变更文件等
国家和上海市现行的施工质量验收规范及评定标准
四.监理工作成效
我公司本着“业主的需要就是我们服务的方向”的服务宗旨,接受业主的委托,在合同规定的范围内开展监理工作。在本工程项目的施工期间,制定了详细的监理规划和监理细则,确定了质量控制的目标,实施了对本项目的建安工程从原材料、施工方法、检查验收等全过程的质量监理,自始至终、全面竭诚地履行了合同中的各项义务。
1. 在本工程土建开工时,我公司就派了两名土建监理工程师常驻现场。在生产车间桩基施工和消防水池基坑支护施工等重要阶段,又增派两名监理工程师充实进来,进行每天24小时不间断的值班监控;在车间大楼主体结构施工高峰时,增加一名监理员旁站监控,这期间我公司也有一名专业电气工程师负责本工程各类预埋管道的验收工作;在各类工艺设备开始安装时,派驻了三名专职的电气、管道、设备安装工程师到现场开展监理工作。总之,根据本工程项目的施工不同阶段,我公司及时派出相关监理人员进驻现场开展监理工作。从人员安排上确保工程的质量控制。
2. 我公司要求现场监理人员在关键部位或关键工序施工过程中必须进行旁站监督。在六个单位工程的基坑开挖和浇筑混凝土过程中都进行日夜不间断的值班监督。
3. 消防水池基础埋深六米左右,其基坑施工是有一定的难度和风险。为确保此工程安全施工,我公司直接委派了土建专家对深坑的围护施工图及施工组织设计(施工方案)进行认真审定,并提出针对性的建议和意见;其次,在消防水池围护工程的施工过程中,我们现场监理人员实行了全天候质量监控制度,从围护钻孔灌注桩、压密注浆施工到及砼锁口梁、水平支撑梁的浇筑,每天24小时不间断地 3 在现场值班,检查、验收施工过程中的每一道分项工程质量,从而使消防水池工程能够安全地完成施工任务。
4. 在设备安装监理方面
⑴.设备安装工程中有大量的钢结构架制作安装。我监理人员从钢材进场。喷砂除锈,防腐处理。焊接制作直至安装等工序进行了严格的检查、测量,只有在上道工序检查合格后才允许进入下道工序施工。在生产车间设备安装前,我监理人员对进场的设备逐一进行检查,以确保设备的完好、合格。设备安装后即对其安装质量进行检查和复测。
⑵.在工业管道制作安装过程中,除日常的巡检外,每焊制完一批管道即由监理随机抽查部分焊口进行摄片探伤检查。在管道的水压试验和管道吹洗时监理员实施全过程的旁站监控。为确保防爆车间今后的安全生产,监理人员重点检查了保护接地,防静电接地以及各电缆进线口的密封质量。
⑶.总之,在整个设备安装过程中,我监理除了日常的巡检以外,还对不同的施工阶段作出重点检查、检测,一旦发现施工质量问题,即及时责令施工方整改,从而确保整个工程的安装质量。
5. 在整个施工监理阶段共发出的书面文件: 监理月报共20份; 监理通知单32份 监理备忘录53份 各类监理评估报告12份。
五. 施工过程中出现的问题及其处理情况和建议
1. 本工程项目是由克瓦纳(英国)化工有限公司做项目总承包,原所有的设计任务均委托给上海医药设计院,但后又转给无上海设计资质的天津一家设计院。我监理方悉知后认为这是严重的违规行为,立刻向总承包方书面提出要求纠正,但总包未予接受,故我方果断地以书面形式向建委有关部门反映了以上情况,最后还是得到了纠正。
2. 在施工过程中对于施工方严重违反国家及地方有关规范、规程的的规定而可能使施工质量造成严重后果的行为,我监理方给予了坚决的制止,整个工程的施工过程中共签发了各类工程停工通知单、监理通知单、监理备忘录138份。
3. 因总包和分包间存在竣工资料工作责任不明确,造成在竣工资料无人管及扯皮现象。但我方本着对工程高度负责的精神,主动协调施工各方的分歧,由始至终地指导、帮助他们整理编制竣工资料,做了大量的工作,使竣工验收最终能得以通过。
六. 结论语
整个施工监理过程中,在业主的支持和帮助下,监理人员依照监理规划、监理实施细则、监理程序对施工处理控制点进行重点监控,较好地协调了土建和安装分包单位之间的关系,保证了工程有序地进行。对现场发现的质量问题都及时地以书面形式通知了各单位,落实了这方案。
本项目也存在了一些值得进一步探讨的,且在今后的项目实施过程中应引起重视的问题:
1. 选择分包商(施工单位)对确保工程质量的重要性。2. 怎样才能使监理工作更有效地开展,从而能使工程质量得到 5 更有效的保证。譬如承包单位统计经专业监理工程师质量验收合格的工程量,才能按施工合同的约定填报工程量清单和工程款支付申请表。
3. 怎样有效规范承包商的经营行为,从而有效控制工程进度。
上海市工程设备监理公司
2001年7月
第二篇:罗氏工作分类
罗氏工作分类
1.医药信息顾问 职位职责:
1.在公司政策和程序指引下向指定客户群传达医学信息
2.负责区域内外部客户医学信息沟通和传递,医学教育活动和培训 3.定期开展学术会议,向客户介绍产品在不同适应症上的优点 4.及时收集、提供市场信息并做出适当建议
5.根据区域销售情况合理制定预算,并按计划开展工作 6.与客户建立良好关系,维持公司形象
7.熟练掌握产品知识,定期参加相关产品知识培训及学术会议 职位要求:
• 本科及以上学历,临床医学、药学及医药相关专业 • 具有良好的沟通协调能力和强烈的学习愿望 • 乐观积极,懂得自我激励和压力转换 • 良好的团队合作精神和自我学习能力 • 熟练使用MS Office,英语良好 2.销售助理 职位职责:
1.处理产品组销售经理的文书工作 2.办事处日常行政事务 3.销售数据的输入和保管
4.办事处推广资料及仓库的管理
5.有责任将获悉的不良事件在获悉当日尽快报告给药品安全部门 职位要求:
• 本科及以上学历
• 良好的英语书写及英语口语能力;英语6级及以上优先 • 具备成功的秘书/助理实习经验优先
• 具备专业性,团队合作精神;有强烈的责任感 • 熟练操作Word, Excel, PPT等应用软件 3.骁悉专员
职位描述:
1.热情专业的服务于800热线
2.完成每月工作汇报报表
3.协助销售服务管理用户
4.及时上报不良反应
5.热爱办公室内勤工作 职位要求:
• 大专或以上学历,护理或医学专业优先
• 具有客户服务工作经验的优先
• 熟练运用Excel,Word等MS-office应用软件 4.产品战略规划助理 职位职责:
1.协助主管收集、整理数据,核对各种数据报告所需基础数据 2.根据主管要求制作PPT 3.协助主管制作产品部门所需报表 4.其他临时项目的支持 职位要求:
• MBA及以上学历,医学、药学或者市场相关专业背景优先 • 良好的沟通与组织能力,性格沉稳,团队合作能力强 • 良好的英语书写及英语口语能力
• 熟练操作Word, Excel, PPT等应用软件 5.销售绩效管理助理 职位职责:
1.协助准备医生数据收集模板,收集整理数据 2.协助记录、回答CRM用户的问题 3.其他跟CRM系统有关工作的支持 职位要求:
• 本科及以上学历,计算机相关专业背景优先 • 仔细认真,团队合作能力强
• 拥有良好的英语书写及英语口语能力
• 良好的excel, access基础,具备较强的学习及沟通能力 6.临床试验助理
职位职责:
1.根据要求进行研究文件管理 2.追踪各项工作计划的实施情况 3.分发并跟踪临床进展报告
4.协助组织临床试验及各种相关会议 职位要求:
• 临床医学及相关专业本科及以上学历 • 拥有良好的英语书写及英语口语能力
• 熟练操作Word, Excel, PPT等办公应用软件
• 责任心强,注重细节;良好的人际沟通能力和团队合作精神 7.数据管理专员
Data Manager 职位职责:
1.协助完成研究中的数据管理工作
2.协助追踪及维护数据管理信息及数据检查报告 3.协助完成数据管理研究信息的归档 4.协助完成实施及程序提高的确认工作 职位要求:
• 计算机、生命科学、临床医学及相关专业,本科及以上学历 • 拥有良好的英语书写及英语口语能力
• 熟练运用计算机应用程序,包括电子数据表、文字处理软件及数据库等 • 拥有良好的沟通与组织能力,团队合作能力强 8.药品安全专员
drug safety associate 上海市
职位职责:
1.对相关药品安全的信息和文件进行维护和管理
2.相关数据的收集,整理及录入,确保录入数据的质量和一致性 3.协助主管向相关部门通报产品安全性信息并进行适当交流
职位要求:
• 临床医学相关专业,本科以上学历 • 较强交流技巧和团队合作经验
• 较强的法规意识和领悟力,有较强的工作责任心
• 能自我激励, 有较强的工作计划性并合理安排工作时间 9.生物统计师
上海市
职位职责:
1.阅读相关统计课题报告,撰写课题总结
2.协助完成协议提供、案例报告表格确认及分析安排等工作 3.进行数据分析模拟探索性实验 职位要求:
• 统计学及相关专业博士在读学生
• 熟悉SAS等统计软件、数据库及界面操作系统 • 拥有良好的英语书写及英语口语能力
• 拥有良好的沟通与组织能力,团队合作能力强 10.市场部助理 点击城市申请该职位: 上海市
职位职责:
1. SAP系统操作及维护
2. 协助产品经理开展市场推广活动,确保市场计划的顺利进行
3. 协助产品经理进行预算控制,准备财务报告,监督并跟进项目的付款 4. 认真有效的贯彻执行公司政策和流程 5. 提供部门必要的行政服务和支持 6. 负责部门文档的建立及管理 职位要求:
• 本科以上学历,相关专业背景优先
• 拥有良好的沟通与组织能力,性格沉稳,团队合作能力强 • 拥有良好的英语书写及英语口语能力 • 熟练操作Word, Excel, PPT等应用软件
11.数据分析助理 点击城市申请该职位: 上海市
职位职责:
1.协助收集,整理和分析相关数据 2.核对各种数据报告所需基础数据 3.协助制作基础报表 4.其他项目的支持 职位要求:
• 本科以上学历,相关专业背景优先
• 良好的沟通与组织能力,性格沉稳,团队合作能力强 • 良好的英语书写及英语口语能力
• 良好的excel, access基础,具备较强的学习能力
第三篇:罗氏面试宝典
在耐心等待了一个星期以后,今天早上在单位上班的我的临时收到了罗氏的二面通知。(本人这次共写了三个帖子,从辉瑞到罗氏,从一面到二面,都很详细,有心的网友可以搜搜我以前的帖子,或是等以后有机会把三个帖子整合重新推出)
这 里先做一些说明,参加罗氏第一次面试的时候是大区经理直接来面试我,当时自己感觉还好(具体面试内容在我以前的帖子),当时说的是两个星期之内给予回复。到今天为止,才刚刚一个星期的时间就收到了二面通知,感觉很好,但是由于自己还在单位上班,天气较冷,自己穿了非常随便而笨重的羽绒服。在电话中我听到的 时间是早上10点35,但是面试官实际说的是10点15,所以我迟到了,而且不是一般的迟到,足足有20多分钟。当时我穿着笨重的衣服,迟到,来到了罗 氏。
这次面试我的是罗氏的一个地区主管,我一进去,他非常气愤,可以看得出他对我迟到的不满,进去以后简单说了一下自己迟到的原因,是和他在沟通上出了一些问题。他也很好,直接就让我开始面试。
首先,还是自我介绍。
简单的自我介绍以后,他开始提问:(下面列出一些想到的问题)
1.先说说自己的优缺点?
2.对罗氏的理解?
3.对创新的理解?
4.我的人生目标?
5.如果我加入公司,会给自己一个什么样的定位?
6.你也说了你是一个典型的80后,你是怎样看待80后的?
7.你在原单位干的好好的,为什么要选择罗氏?
…………(还问了好多问题,记不起来了)
实际案例分析:
1.把这个纸杯推销给我(指着桌上随意的一个纸杯),一般的纸杯只要1元,你这个3元。
2.要是我临时有事不在,而让你代我组织一个相关的学术会议,你怎么操作?
3.把一把木梳推销给一个和尚。
4.把鞋子推销给非洲一个非常偏远的村民,它们从来没见过鞋子。
5.年底你去收款,本来该收10000,而实际上人家只给你3000,怎么办?
以上时间大概有1个小时左右吧。
最后面试官非常好心的给了我点评:
1.你是一个面试高手,非常优秀,老板推荐的果然没有错(这里我分析可能是第一次面试的时候大区经理就非常欣赏我,因此推荐了我)
2.机灵、踏实
3.有一个公司花了100多万美元买的测试题需要你做一下,这个测试题是老板推荐的人才有资格来做。
4.你今天迟到,也没穿正装。
接 下来我就和另外一个来面试的人开始做题,这个人是中国药科大的研究生,可能也是大区经理推荐的,面试一样非常精彩。我们就一起做题。题目比较多,有性格测 试、数学、语文等相关题目。面试官说我们两个人同样优秀,但职位只有一个,就在我们两个中间选,我做题做的比较快,做完之后那个研究生还有好多没做,我交 了卷就先走了。估计这次希望还是很大的,只要测试题不出什么大的问题。
如果大家感兴趣,我会随后把我的回答贴出来。谢谢
第四篇:2007-2008上期班主任总结罗正群
2007-2008学年上学期班主任工作总结
罗
正
群
光阴似箭,日月如梭。转眼,2007-2008学年上学期的教育教学工作就结束了。在这个学期,最让我欣慰的是班干部队伍的渐渐成熟,他们已经能够管理一部分事情,虽然不如高年级学生那么得心应手,不过比起开学初以来,确实让我放心了很多。特别是每天的晨扫和午扫,教室和公区的卫生都打扫得干干净净,其实这功劳就属于班里的那些小干部。
这学期,我发觉班级学生问题开始复杂化,思维活跃化。有部分转过来的学生,行为上不能融入班级。比如打电子游戏,本班有几个学生迷上了游戏机,成绩有下降的趋势;还有打架现象。简单的说教已经对他们没有作用了,学生的交往能力在增加,制造麻烦的几率也在上升。,矛盾渐渐多了,让我感到他们确实是在成长。三年级是最为动荡的一个年级,最容易发生变化,好学生可能就变化成坏孩子,坏孩子也可能渐渐寻求上进。这在我们班级里比较明显,有些平时比较好的学生,有时成绩开始下降,而平时不怎么好的孩子,倒突然就学习也认真,活动也认真,上下的波动比较大。为此,我在学生中间采取的是加强思想教育。
第一,行为规范教育。由于学生的自我约束力差,所以我对行为规范教育是常抓不懈,督促学生在思想上提高认识。平时,对有些学生多讲、多提醒,对随地乱扔、说脏话等不文明行为及时指出,要求改正。结合学校开展的“习惯之星”的评选活动,及时评选出班级的“习惯之星”并进行表彰,树立学生身边学习的榜样,形成“比、学、赶、帮”的良好风气。一学期来,大部分学生都能自觉遵守行为规范。
第二,学习目的性教育。有的学生基础差、学习意识差,有的学生甚至厌学,但我还是有意识地对引导学生好好学习。首先加强和科任老师的联系,了解学生上课情况,对待学习自觉性差的学生,共同教育、帮助;然后安排好的学生与成绩差的学生结对子,负责督促、检查学习任务完成情况。对于特殊群体学生的教育,我主要采取私下谈心的方法,这样学生容易沟通,也容易接受。对他们,我平时多注意,多观察,只要他们有点滴进步就及时给予鼓励,让他们逐步树立起自信心,不断争取积极向上。
第三,集体主义教育。现在的学生自我意识较强,缺乏顾全大局的意识。所以,通过集体主义教育,促进学生互帮互学,增进友谊,大家共同进步,树立集体意识,并通过参与学校组织的集体活动,如篮球联赛、大合唱、科技实践活动等培养学生的集体意识。丰富多彩的活动让学生品尝了合作的愉快,享受了成功的快乐,同时大大增进了集体的凝聚力。科技实践活动还获得了泸州市科技创新大赛一等奖。
本学期虽然取得了一些成绩,有些学生的学习进步了,有些学生改了一些不良习惯,但仍存在很多的不足。部分学生总是游离于集体之外,什么事情好象都与他无关,每天默默地来,悄悄地去,很少听到他们说话的声音,看到他们活动的影子。今后的工作中,还应采取相应措施,努力做到“人人有事干,事事有人干”,把班级工作做好!
2007-2008学年上学期班主任工作总结
朱
红
今年我担任三年级(3)班班主任工作,实行素质教育,创建一个良好的班集体,培育学生完整人格,这是班主任肩上责无旁贷的重任。我认为,班主任在有效地进行班级管理的过程中,不能仅靠一个或几个教师严格管理,关键是要教育和指导学生学会自我管理,使每个小学生做到既是管理的对象,又是管理的主体,达到“管,是为了不管”的目的。重视人的全面发展,重视学生完整人格培养、个性充分发展,是21世纪教育的重要内容,也是当今世界各国教育现代化的重要目标和共同趋向.为了实现上述目标,本学期我主要从以下几方面开展工作:
营造良好的班级气氛:在班级理念上,我积极主张这样一个理念:积极的人象太阳,照到哪里哪里亮;消极的人象月亮,初一十五不一样。而且自学生来古蔺镇一小的第一天,我就把这样一个理念教给了全班学生,这个理念一直贯穿于我治理班级的整个过程中。为了配合这个理念,我自己为班级设计了两套独特的掌声,一套是用来鼓励自己的,一套是用来鼓励他人的,通过这些理念和掌声,激发学生的斗志。一个班级必须要有铁的纪律,一切行动听指挥,步调一致才能得胜利。凡是违反纪律的学生一定要受到纪律处分,而且班主任一定要坚守自己的原则,一旦有一次你没有遵守你自己的原则,那么你将变成一个没有原则的人。
培养一支高效率的班干部队伍:培养一支高效率的班干部队伍使得班主任、班干部及学生三者之间的关系如同伞柄、支架和布,一个再好的伞柄如果没有支架的支撑是无论如何也撑不起一片天空的.重视人的全面发展,重视学生完整人格培养、个性充分发展,是21世纪教育的重要内容,也是当今世界各国教育现代化的重要目标和共同趋向。
引导小学生自我管理:可以提高他们自我教育的能力。从根本上说,儿童能否受到良好的教育,有内外两个方面因素的影响。而引导小学生自我管理正是其内部因素发挥积极作用的重要途径,使学生在更好的环境中接受教育
班主任除了要锻炼自己的班级管理能力外,还应该善于引导小学生进行自我管理。可以说,班集体教学的顺利进行离不开小学生的自我管理。几十名学生组成的一个班级,光靠班主任、科任教师几个人的力量,是无法取得较好的管理效果的。引导全班的每一位同学,发扬主人翁精神,个个都成为班集体管理工作的积极参与者,班集体方可能成为健康完整的有机体.一方面,我们要对学生进行生活学习的独立性教育。我在晨会、少先队活动中宣传“自己的事自己做”,并举行各类小竞赛激趣,强化意识。课外,我又主动与家长联系,使学生获得更多的培养独立性的机会,保证了学校、家庭、社会影响的一致性。另一方面,我又爱护学生自我管理的积极性,经常进行成就强化。一般说来,少年儿童的心灵是纯洁无暇的,他们乐于遵守纪律,乐于配合教师的工作,也乐于为集体服务。只要教育得法,每个孩子都会成为班级管理的积极参与者。那么究竟该如何调动积极性呢?基本的途径是给予正面强化。例如我实行了每周两天的“无批评日”制度,使学生不断体验到成功的快乐,巩固了进行自我管理的意识。
综上所述,我作为一名小学班主任,主要从认真抓好班级管理工作,充分发扬民主,让全体学生积极参与管理,千方百计调动他们的积极性和创造性,培养他们独立自主的精神和自我管理的能力,逐步完成由教师管理向学生管理的过渡,真正扮演了引路人和协调者的角色。
学年上学期教学工作总结
朱 红
2007学年下学期,本人坚持认真备课、上课、听课、评课,及时批改作业、讲评作业,做好课后辅导工作,广泛涉猎各种知识,形成比较完整的知识体系,严格要求学生,尊重学生,发扬教学民主,使学生学有所得,不断提高,从而不断提高自己的教学水平和思想觉悟,并顺利完成教育教学任务。下面是本人的教学经验及教训。
1、精心备课,上好课,努力提高教学质量。为了上好课,我做了下面的工作:
⑴课前准备:备好课。
①认真钻研教材,对教材的基本思想、基本概念,每句话、每个字都弄清楚,了解教材的结构,重点与难点,掌握知识的逻辑,能运用自如,知道应补充哪些资料,怎样才能教好。
②了解学生原有的知识技能的质量,他们的兴趣、需要、方法、习惯,学习新知识可能会有哪些困难,采取相应的预防措施。
③考虑教法,解决如何把已掌握的教材传授给学生,包括如何组织教材、如何安排每节课的活动。
⑵课堂上的情况。
组织好课堂教学,关注全体学生,注意信息反馈,调动学生的有意注意,使其保持相对稳定性,同时,想方设法创设教学情景,激发学生的兴趣和情感,使他们产生愉悦的心境,创造良好的课堂气氛,课堂语言简洁明了,克服了以前重复的毛病,课堂提问面向全体学生,注意引发学生学语文的兴趣,课堂上讲练结合,布置好家庭作业,作业少而精,减轻学生的负担。
2、做好课后辅导工作。三年级学生爱动、好玩,缺乏自控能力,常在学习上不能按时完成作业,有的学生抄袭作业,针对这种问题,我注意抓好学生的思想教育,并使这一工作惯彻到对学生的学习指导中去,做好对学生学习的辅导和帮助工作,尤其在学困生的转化上,对学困生努力做到从友善开始,比如,握握他的手,摸摸他的头等。从赞美着手,所有的人都渴望得到别人的理解和尊重,所以,和差生交谈时,对他的处境、想法表示深刻的理解和尊重,还有在批评学生之前,先谈谈自己工作的不足。
3、认真学习新课标要求,勇于从事语文教学的新尝试,并成功的运用电脑多媒体课件上了一节语文公开课,借以带动现代语文教学工作的创新。
4、积极参加学校及县里各级各类的教科研活动,促进自身水平的提高。
为提高自身的业务水平,本学期我积极参加各级各类组织的教研活动。在一小阶梯教室听泸州实验小学优秀教师执教的课,收益匪浅。我还积极参加学校组织的各类教研活动,听课节数达30余节。为提高自身的业务水平,我还经常阅读一些教学书籍,作记录,写感受,收集最新的教学信息,获得最新的教学理念,以弥补自身的不足。
总之,本学期以来,我尽心尽力做好自己的教学工作,不断严格要求自己,努力汲取他人的长处,不断更新自己的教学理念,并运用到自己的教学的实践中,使每一节课都能取得良好的教学效果,使每一位学生都能真正提高自己的语文素养。由于自身的能力有限,教学的经验的不足,本学期在教学中还存在着不少的问题,主要有:
1、个别学生的不良的学习习惯还有待进一步引导改正。本班学生生性活泼好动,其中有一些学生在习惯方面存在着的问题——写字习惯很差,写字姿势不正确,不能自觉地完成作业,还有个别学生字迹潦草。还有的学生作业不能按时上交。或遇到难题没有坚强的意志,不会主动克服解决。
2、写作方面水平差异太大。班中学生的写作兴趣比较浓厚,但优生与差生的差异比较大。导致全班学生的写作水平发展不够均衡。在今后的教学中,应该加以克服。
3、教学成果少,学生获奖也不多。在今后的教学中,还要严格要求自己,让学生多动笔,多投稿,争取更多的作品获奖或发表。
新理念下小学语文课堂教学的反思
罗正群
【摘要】:新课程实施已有几年,在教师角色发生转变,学生学习方式发生改变,一切以学生为主体的可喜变化下,语文老师的困惑也越来越多,认真反思我们的教学,才能寻找困惑的突破口,使我们的语文教学改革扎扎实实地开展下去,让教师在反思中成长,让学生在不断优化的课堂教学中学好祖国的语言文字。
【关键词】:破与立 生成与预设 教与考 人文性与工具性 问与灌 热闹与实效 务虚与务实 多媒体与教材
轰轰烈烈的新课改进行到现在已经进入第六个年头了,其间在更新教育理念、改善师生关系等方面产生了可喜的变化,但毋庸讳言,新课改中也出现很多问题和困难,需要我们认真反思和面对。
常听到语文老师的抱怨:语文课太少了,课都上不完,总觉得时间不够。为什么很多老师有这样的感慨?与旧教学大纲相比,各年级语文课只比原来减少了一课时。我们的阵地是课堂,我们的新课程的改革不落实在课堂上就难以继续深入下去。回忆几年来的小学语文,有些矛盾不能不引起我们的高度重视。
一、破与立
新课程出现伊始,即大张旗鼓、旗帜鲜明地宣称要打破一切束缚教学效益的错误做法,以树立新观念、新方法、新理念。诚然,自古以来,立都在破之上,有破才有立,有立才能破。但是实施过程中出现了过激行为,导致了无限制地破:先前的扎实的语言文字训练被忽视,取而代之的是泛泛而谈,漫无边际的空洞教学,且美其名曰发展学生自主性;先前适量的家庭作业被取消;堂而皇之地说要减轻学生课业负担,让学生个性得以张扬。先前的让学生独立思考,在疑惑处点拨的教学方法也不再推崇,原因是这样的课堂太死板,没什么“看头”,取而代之的是课堂上热热闹闹,发言踊跃,答案繁繁种种,评价含含糊糊,下课后学生脑子里干干净净,一无所获。看来我们要在破与立之间找一个黄金分割点:即破立的程度。笔者认为,一切有碍于新课程实施的陈旧教学方法当然要打破,但已经被实践证明的,卓有成效的教学方法不但不能破,而且还应站在有利于新课程实施的高度加以巩固、改进。拿着渔网到处打鱼,但抓到的鱼儿绝不能放掉,不然捕鱼就失去了存在的意义,变成了消遣。我们的教学工作绝不是消遣,而是要促进人的不断发展、充实。
二、生成与预设
传统教学中,课堂教学的确是教师备课的复制品,即教师预设教学内容、预设教学程序,有经念的教师还可以预设教学效果:即有明显的课堂教学指向性和目的性。但这种教学方式也遭否定,不少专家、教师认为课堂是生成的:即要根据课堂上的变数来确定教学策略。就课堂是生成的,笔者无异议,因为这也符合辩证唯物主义观念。但一味强调课堂是生成的,则会使教师在教学中无所适从,比如语文课《黄河象》,如果学生一味追问化石种类及其他问题,难道教师就丢开文章对化石描写方法而不顾,对引导学生怎样进行合理的教学目的而不顾,而将《黄河象》上成一节自然课,笔者不敢苟同。又如教学《桃花心木》如果学生一味纠缠在桃花心木的用途、种植方法上,难道教师就丢开本文重点以物喻人的写作方法而不顾,将此课上成农技课。如果这种变数主宰了我们的课堂。那么新课程标准如何得以体现。看来要妥善处理好课堂教学的生成与预设这两个问题,不然教师上课极易脚踩西瓜皮——滑到哪里是哪里。笔者认为就课堂教学而言,生成是客观存在的,且预设在前,生成在后,生成会影响预设。故预设时 应考虑到生成,要让生成为预设服务。这样,我们的教学法才不会偏离航道,而让生成成为东风,使教学之船方向更正,速度更快。
三、教与考
很多老师在实施课程后抱怨:教学成绩下滑了。究其原因,是原先的考较好地结合了教的内容。而如今的考似乎与教脱节:表现在教师以优秀文本为载体的教学内容在考卷上体现甚微。难怪教师坦言:我们教的东西不考,考的东西我们又确实没教。最终导致教师丢开文本去押题、猜题、赌题。没办法,不管新课程如何诱人,家长看重的还是学生的成绩,作为一个语文老师认为,如果考不能适应教,则反过来会对教起消极作用。如果考不能忠实反映教的结果,考也就在于失去了其价值。那么是不是教什么就考什么,考什么就教什么呢?显然不是。但至少要在教与考之间寻找一个支点,使教与考平衡。这就要求我们的考归要到底要为教服务,而不应成教的阻力,可喜的是,我们的教研工作者已经意识到这一点,表现在阅读题由原先的均为课外阅读改为由一个课内阅读为平台,再拓展一个课外阅读。这就使考与教有了延续性。要将这一命题思路更加具体化,使教师的教更有针对性,学生的学也更有信心。让学生成绩上去,拥有成就感,对实施新课程有利无弊
四、人文性与工具性。
一直以来,我们认为语文人文性与工具性的统一,然而教师们比较重视人文精神的培养,弱化了工具性。有些教师在教学中还不够重视文本的解读和基本知识的理解、掌握,不注重语文基本能力的培养,对课文内容匆匆带过,字词难点都没理解清楚,就跨过课文做了许多引申和发挥,把目光聚焦于“情感态度与价值观”的光环上。作为一个语文老师很有些担心,这样长期下去,我们的语文教学将走向另一种悲哀——从小学到初中,学生基本的语言问题都不能过关。
五、满堂问与满堂灌。
在课改实验中,那种以教师为中心的“满堂灌”式的课堂教学现象已不复存在,但是一种典型的“满堂问”式的教学产生了。在这种“满堂问”的支配下,教师在课堂上连续提问,或是非问,或填空问,或自问自答,有时甚至一问追着一问。牵着学生鼻子走。学生则习惯性地举手,仓促地回答问题,或置之不理,保持沉默。“满堂问”的教学,其实质是以教师为中心,教师预设好结论,然后千方百计引导学生猜测,并以预先设计好的答案为最终目标,以此锁定学生的思维。这种“满堂问”的教学方式,其实仍然是一方强引灌输,一方消极接受的方式,与新课程 中阅读对话的理念是背道而驰的。课堂提问的最终目的是激发学生思考的积极性,使学生养成善于思考的良好习惯,从而提高学生的思维品质。但是我们的提问不要太碎太杂。为此,教师设计问题时要找准切入点。这个切入点,对课文而言,覆盖全文,具有“牵一发而动全篇”之效;对学生而言,这一点能开启学生的心智,激活学生的思维,引发学生进行深层的多向的思考与探析。对于文本而言,要是涵盖文章整体的主问题,如《秋天的雨》中“秋天的雨使大自然的景物发生了怎样的变化?”这包括“秋天是一把金钥匙、秋天是一盒五彩缤纷的颜料等等”,这样的问题既立足于文本,又关照了学生,学生顺着这一问既能深入了解课文的主旨,又能引发自身的探索意识,对文本进行深入探讨。一堂课有这么一两问就足够了。这样一来,课堂上不再是烦琐提问的干扰,而是一种多元的、充满生气的交往对话。
六、课堂的热闹与实效。
新课标给语文教学带来了新鲜的活力。课堂上,教师不必拘泥于“教参”上的标准答案,也不必受考试内容的拘束,手脚一放开,自然就有了一份潇洒,课堂形式也随之多样起来——演讲、小品表演、辩论会……层出不穷的授课方式,让语文生机盎然。然而,热闹的课堂是否就等于丰硕收获?我们在参加语文教学交流的活动时,常看见教师们花费大量精力来设计活动,课堂上师生之间热热闹闹,但是课文被搁置一边,一堂课下来,只见活动的热闹,不见文本的有效阐发、挖掘和共鸣。而且,课堂上教师的随机点拨欠缺,不能有效引导学生的思维方向,结果,这样的课堂只是让人感觉“热闹得空洞”。一篇课文究竟应该怎么上,什么方法最好,什么形式行之有效,我们很难有个标准去加以衡量。然而,就语文教学来说,立足文本却是不容忽视的一个前提。就文本与活动的关系而言,文本是主干,活动是枝叶,活动是为文本服务的。如果在备课和上课时只是专注于活动,一味花力气在活动中创新出花样,脱离、偏离、忽略了文本,无异本末倒置。语文学习多样的形式固然重要,然而,用心、仔细地阅读却是语文学习获益的根本所在。一篇课文,能够读进去,读明白,才谈得上独特的感受和体会。引导学生读进课文,挖掘文本中丰富、深厚的资源,在此基础上,再辅以各种有效的活动,让学生发散思维,是我们当前使用新课标中必须认真对待的问题。
七、务虚与务实。
许多教师为了激活学生学习的兴奋点,采用了新颖、灵活的教学手段,并取得了一定的效果。但也存在一定的问题。比如课堂上小组讨论。这种教学方式的优越性自不用说,但是在教学实践中也出现了形式上的倾向。最明显的表现是:教师提出问题,然后一声下令:“讨论!”学生就分组围成了一团,学生的讨论声响成一片,课堂气氛非常热烈。几分钟后,教师一声令下:“停止讨论!”于是学生的讨论声戛然而止。结果展示讨论成果的往往是几个优等生,大部分只是在那里作“看客”,不能真正起到讨论的作用。新课程理念为什么提倡将讨论引进课堂?原因之一就是因为讨论是提高学生积极性、自主性的一个重要途径。只要学生讨论了,“参与教学”的基本目标 就没有架空。只要学生“有效讨论”了,这节课的教学才真正具有意义。什么叫“有效讨论”?首先它得有一个适当的主题,其次,讨论得有一个大致完善的过程。任何一个过程的完结都是需要时间的,对于一次讨论,到底需要多少时间?没有固定的指标。但是,一节课的讨论时间不够肯定是行不通的。讨论是不是教育资源?我以为是。是谁的资源?既是学生的资源,也是教师的资源。对于学生而言,他们可以在同伴的帮助下,激起学习的兴趣,受到不同的启发与教育,从不同的角度充分理解教师对课程的讲授。对于教师而言,可以从学生的讨论里发现新的问题,完善自己对学生的引导。显然这是一种生成性资源,一种不可再生的一次性生成资源。所以教师必须走下讲台参与学生的讨论,去倾听学生的发言。所以真正的讨论,应该是教师提出问题后,给学生以充分的思考时间,同时也要参与其中。
八、多媒体与教材。
运用多媒体教学,在直观化、形象化方面绝非传统教学手段所能比。它所营造的由形象、色彩、声音动画等构成的综合氛围,使学生“身临其境”,从而大大激发了学生的学习兴趣。因此,不少教师喜欢借助多媒体进行教学。然而,大量教学实践表明,音像手段运用于语文课堂,如果控制不当就会成为干扰因素。例如,教学有关名山大川、花木鸟兽的课文,教师不惜花费大量时间精力,制作、放映相关的多媒体课件。这些课件虽然让人耳目一新,一时带给学生强烈的视听冲击,引起多感官的兴奋刺激,但其占用的课堂时间,远远超过学生对文本解读或动思动笔的时间。为什么学生看得津津有味,听得如痴如醉,甚至于眉飞色舞,喜形于色,但过后却犹如过眼云烟,对课文内容一知半解?主要原因在于:多媒体迷住了学生读书的眼。语文课是语文实践课,这个本质特征要求一切教学手段都必须以语文活动为主体,以语言媒介为中心,学生只能通过语言文学才会理解、体悟、想象。所以借用任何直观形象的教学手段,最后还都必须落实到课文的语言文字上去。所以,教师务必及时凭借画面的内容,引导学生进行对比性的语言文字的“回放”和“还原”——回归文本,探究作者是运用哪些语言材料和艺术手法,来塑造人物或描绘景物的。
语文课程改革不能为了“立”而求新求异,不能借改革之名回避传统和实际,甚至避开规律,当然更不能矫枉过正。处理好课改中的诸多问题,会有利于新课程的健康迈进。
任何事物的发展都应适可而止,矫枉适度。过则不必也不利。这句话同样适应我们当前的课改工作。
第五篇:VB常见问题总结
快捷域名:http://yujimyfavorcn.programfan.com 创建于:2005-6-5 共 6篇文章 访问统计:169
VB常见问题总结
点击数:138 发布日期:2005-6-5 18:28:00 【字体:大 中 小】【评论】【打印】
各位朋友大家好,如果你在这里的时间够长,那么你会发现很多帖子的问题是相同的,既然这样,不如总结到一起让初学者来翻看,再热心的大虾也不愿意把一个答案重复几十遍:)Ryowu制作匆忙,难免错漏,还请见谅。
若朋友您想要问如何才能学好vb,或者入门需要看什么教材一类的问题,建议你抱着一颗刻苦钻研的心去面对这门学问,多动脑,少提问,遇到不知道的,多查msdn,多看老贴,或者用断点来亲自试验。实在不会了,请在此贴中查找您的常见问题,如果还没有,那请您发出新贴,向各位高手讨教:)
查找方法:按ctrl+f,输入要查找的问题关键字即可
注明:本贴源于VB编程乐园网站,本人只是稍微编辑了一下。
每个问题中间用///分隔,这只是一部分最常见到的问题,以后会逐渐更新。
//////////////////////////////////////////////////////////////////////////////////// 如何用VB建立快捷方式
Private Declare Function fCreateShellLink Lib “STKIT432.DLL”(ByVal lpstrFolderName As String, ByVal lpstrLinkName As String, ByVal lpstrLinkPath As String, ByVal lpstrLinkArgs As String)As Long Sub Command1_Click()Dim lReturn As Long '添加到桌面
lReturn = fCreateShellLink(“....Desktop”, “Shortcut to Calculator”, “c:windowscalc.exe”, “")'添加到程序组
lReturn = fCreateShellLink(”“, ”Shortcut to Calculator“, ”c:windowscalc.exe“, ”“)'添加到启动组
lReturn = fCreateShellLink(”Startup“, ”Shortcut to Calculator“, ”c:windowscalc.exe“, ”“)End Sub
//////////////////////////////////////////////////////////////////////////////////// 如何让程序在 Windows 启动时自动执行?
有以下二个方法:
方法1: 直接将快捷方式放到启动群组中。
方法2: 在注册档 HKEY_LOCAL_MACHINE 中找到以下机码 SoftwareMicrosoftWindowsCurrentVersionRun 新增一个字串值,包括二个部份
1.名称部份:自己取名,可设定为 AP 名称。
2.资料部份:则是包含 '全路径档案名称' 及 '执行参数' 例如:
Value Name = Notepad Value Data = c:windowsnotepad.exe
//////////////////////////////////////////////////////////////////////////////////// 在 TextBox 中如何限制只能输入数字?
参考下列程序:
Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii < 48 Or KeyAscii > 57 Then KeyAscii = 0 End If End Sub
//////////////////////////////////////////////////////////////////////////////////// 我希望 TextBox 中能不接受某些特定字符,例如 '@#$%”,有没有简单一点的写法?
方法有好几种, 以下列举二种:
方法1: 可以使用 IF 或 Select Case 一个个判断, 但如果不接受的字符多时, 较麻烦!方法2: 将要剔除的字符统统放在一个字串中,只要一个 IF 判断即可!如下: Private Sub Text1_KeyPress(KeyAscii As Integer)Dim sTemplate As String sTemplate = “!@#$%^&*()_+-=” '用来存放不接受的字符 If InStr(1, sTemplate, Chr(KeyAscii))> 0 Then KeyAscii = 0 End If End Sub
//////////////////////////////////////////////////////////////////////////////////// 如何让鼠标进入 TextBox 时自动选定 TextBox 中之整串文字?
这个自动选定反白整串文字的动作,会使得输入的资料完全取代之前在 TextBox 中的所有字符。
Private Sub Text1_GotFocus()Text1.SelStart = 0 Text1.SelLength = Len(Text1)End Sub
//////////////////////////////////////////////////////////////////////////////////// 如何检查软盘驱动器里是否有软盘?
使用:
Dim Flag As Boolean
Flag = Fun_FloppyDrive(“A:”)If Flag = False Then MsgBox “A:驱没有准备好,请将磁盘插入驱动器!”, vbCritical
' '函数:检查软驱中是否有盘的存在 ' Private Function Fun_FloppyDrive(sDrive As String)As Boolean On Error Resume Next Fun_FloppyDrive = Dir(sDrive)<> “" End Function
//////////////////////////////////////////////////////////////////////////////////// 如何弹出和关闭光驱托盘?
Option Explicit
Private Declare Function mciSendString Lib ”winmm.dll“ Alias ”mciSendStringA“(ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long)As Long
Private Sub Command1_Click()mciExecute ”set cdaudio door open“ '弹出光驱 Label2.Caption = ”弹 出“ End Sub
Private Sub Command2_Click()Label2.Caption = ”关 闭“
mciExecute ”set cdaudio door closed“ '合上光驱 Unload Me End End Sub
//////////////////////////////////////////////////////////////////////////////////// 如何让你的程序在任务列表隐藏
Private Declare Function RegisterServiceProcess Lib ”kernel32“(ByVal ProcessID As Long, ByVal ServiceFlags As Long)As Long Private Declare Function GetCurrentProcessId Lib ”kernel32“()As Long
'请你试试 Ctrl+Alt+Del 是不是你的程序隐藏了 Private Sub Command1_Click()i = RegisterServiceProcess(GetCurrentProcessId, 1)End Sub
//////////////////////////////////////////////////////////////////////////////////// 如何用程序控制滑鼠游标(Mouse Cursor)到指定位置?
以下这个例子,当 User 在 Text1 中按下 'Enter' 键后,滑鼠游标会自动移到 Command2 按钮上方
请在声明区中加入以下声明:
'16 位版本:(Sub 无传回值)Declare Sub SetCursorPos Lib ”User“(ByVal X As Integer, ByVal Y As Integer)
'32 位版本:(Function 有传回值,Integer 改成 Long)Declare Function SetCursorPos Lib ”user32“(ByVal x As Long, ByVal y As Long)As Long
'在 Form1 中加入以下程序码:
Private Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii = 13 Then x% =(Form1.Left + Command2.Left + Command2.Width / 2 + 60)/ Screen.TwipsPerPixelX y% =(Form1.Top + Command2.Top + Command2.Height / 2 + 360)/ Screen.TwipsPerPixelY SetCursorPos x%, y% End If End Sub
//////////////////////////////////////////////////////////////////////////////////// 如何用鼠标移动没有标题的 Form,或移动 Form 中的控制项?
在声明区中放入以下声明:
'16 位版本:(Sub 无返回值)Private Declare Sub ReleaseCapture Lib ”User“()Private Declare Sub SendMessage Lib ”User“(ByVal hwnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, lParam As Long)
'32 位版本:(Function 有返回值,Integer 改成 Long)Private Declare Function ReleaseCapture Lib ”user32“()As Long Private Declare Function SendMessage Lib ”user32“ Alias ”SendMessageA“(ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any)As Long
'共用常数:
Const WM_SYSCOMMAND = &H112 Const SC_MOVE = &HF012
'若要移动 Form,程序码如下:
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)Dim i As Long i = ReleaseCapture i = SendMessage(Form1.hwnd, WM_SYSCOMMAND, SC_MOVE, 0)End Sub
'以上功能也适用于用鼠标在 Form 中移动控制项,程序码如下:
Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)Dim i As Long i = ReleaseCapture i = SendMessage(Command1.hwnd, WM_SYSCOMMAND, SC_MOVE, 0)End Sub
//////////////////////////////////////////////////////////////////////////////////// 检查文件是否存在?
Function FileExists(filename As String)As Integer Dim i As Integer On Error Resume Next i = Len(Dir$(filename))If Err Or i = 0 Then FileExists = False Else FileExists = True End Function
//////////////////////////////////////////////////////////////////////////////////// 如何设置对VB数据库连接的动态路径
我个人因为经常作一些数据库方面的程序,对于程序间如何与数据库进行接口的问题之烦是深有体会,因为VB在数据库链接的时候,一般是静态,即数据库存放的路径是固定的,如用VB的DATA,adodc,DataEnvironment 等到作数据库链接时,如果存放数据库的路径被改变的话,就会找不到路经,真是一个特别烦的事。
笔者的解决方法是利用app.path 来解决这个问题。
一、用data控件进行数据库链接,可以这样: 在form_load()过程中放入: private form_load()Dim str As String '定义 str = App.Path If Right(str, 1)<> ”“ Then str = str + ”“ End If data1.databasename=str & ”数据库名“ data1.recordsource=”数据表名“ data1.refresh sub end 这几句话的意为,打开当前程序运行的目录下的数据库。你只要保证你的数据库在你程序所在的目录之下就行了。
二、利用adodc(ADO Data Control)进行数据库链接: private form_load()Dim str As String '定义 str = App.Path If Right(str, 1)<> ”“ Then str = str + ”“ End If str = ”Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False;Data Source=“ & str & ”tsl.mdb“ Adodc1.ConnectionString = str Adodc1.CommandType = adCmdText
Adodc1.RecordSource = ”select * from table3“ Adodc1.Refresh end sub
三、利用DataEnvironment进行数据库链接 可在过程中放入: On Error Resume Next
If DataEnvironment1.rsCommand1.State <> adStateClosed Then DataEnvironment1.rsCommand1.Close '如果打开,则关闭 End If 'i = InputBox(”请输入友人编号:“, ”输入“)'If i = ”“ Then Exit Sub
DataEnvironment1.Connection1.Open App.Path & ”userdatabasetsl.mdb“ DataEnvironment1.rsCommand1.Open ”select * from table3 where 编号='“ & i & ”'“ 'Set DataReport2.DataSource = DataEnvironment1 'DataReport2.DataMember = ”command1“ 'DataReport2.show end sub
四、利用ADO(ActiveX Data Objects)进行编程: 建立连接:
dim conn as new adodb.connection dim rs as new adodb.recordset dim str str = App.Path If Right(str, 1)<> ”“ Then str = str + ”“ End If str = ”Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False;Data Source=“ & str & ”tsl.mdb“ conn.open str rs.cursorlocation=aduseclient rs.open ”数据表名“,conn,adopenkeyset.adlockpessimistic 用完之后关闭数据库: conn.close set conn=nothing
//////////////////////////////////////////////////////////////////////////////////// 如何让用户自行输入方程式,并计算其结果?
假设我们要让使用者在“方程式”栏位中自由输入方程式,然后利用方程式进行计算,则引用ScriptControl控件可以很方便地做到。
(ScriptControl 控件附属于VB 6.0,如果安装后没有看到此一控件,可在光盘的
CommonToolsVBScript 目录底下找此一控件,其.文件名为Msscript.ocx。)假设放在窗体上的ScriptControl控件名称为ScriptControl1,则在“计算”按钮的Click事件中编写如下代码: Dim Statement As String Statement = ”X=“ + Text1.Text + vbCrLf + _ ”Y=“ + Text2.Text + vbCrLf + _ ”MsgBox “"计算结果=”“ & Y ” ScriptControl1.ExecuteStatement(Statement
//////////////////////////////////////////////////////////////////////////////////// 如何让一个 App 永远保持在最上层(Always on Top)
请在声明区中加入以下声明
Private Declare Function SetWindowPos Lib “user32”(ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long)As Long
Const SWP_NOMOVE = &H2 '不更动目前视窗位置 Const SWP_NOSIZE = &H1 '不更动目前视窗大小 Const HWND_TOPMOST =-1 '设定为最上层
Const HWND_NOTOPMOST =-2 '取消最上层设定 Const FLAGS = SWP_NOMOVE Or SWP_NOSIZE
'将 APP 视窗设定成永远保持在最上层
SetWindowPos Me.hwnd, HWND_TOPMOST, 0, 0, 0, 0, FLAGS
'取消最上层设定
SetWindowPos Me.hwnd, HWND_NOTOPMOST, 0, 0, 0, 0, FLAGS
//////////////////////////////////////////////////////////////////////////////////// 我要如何在程序中开启网页?
在声明区中声明如下(在.bas 档中用 Public, 在 Form 中用 Private)
Private Declare Function ShellExecute Lib “shell32.dll” Alias “ShellExecuteA”(ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long)As Long
在程序中
Intranet:
ShellExecute Me.hWnd, “open”, “http://Intranet主机/目录”, “", ”“, 5 Internet:
ShellExecute Me.hWnd, ”open“, ”http://www.xiexiebang.com.tw“, ”“, ”“, 5
//////////////////////////////////////////////////////////////////////////////////// VB可以产生四角形以外其他形状的 Form 吗?
这个问题,您一定无法想像有多容易,您可以产生任何形状的 Form,但必须借助 CreateEllipticRgn 及 SetWindowRgn 二个 API,例如:
Private Declare Function CreateEllipticRgn Lib ”gdi32“(ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long)As Long
Private Declare Function SetWindowRgn Lib ”user32“(ByVal hWnd As Long, ByVal hRgn As Long, ByVal bRedraw As Boolean)As Long
Private Sub Form_Load()Dim lReturn As Long Me.Show lReturn = SetWindowRgn(hWnd, CreateEllipticRgn(10, 10, 340, 150), True)End Sub
执行结果图片
CreateEllipticRgn 之四个参数说明如下:
X1:椭圆中心点之X轴位置,但以 Form 的实№边界为限。Y1:椭圆中心点之Y轴位置,但以 Form 的实№边界为限。X2:椭圆长边的长度 Y2:椭圆短边的长度的
//////////////////////////////////////////////////////////////////////////////////// 如何移除 Form 右上方之『X』按钮?
其实 Form 右上方之三个按钮分别对应到 Form 左上方控制盒(ControlBox)中的几个选项(缩到最小 / 放到最大 / 关闭),而其中的最大化(MaxButton)及最小化(Minbutton)都可以直接在 Form 的属性中设定,但是 VB 并没有提供设定『X』按钮的功能!要达到这个功能,必须借助 API:
由于『X』按钮对应到 ControlBox 的关闭选项,所以我们只要移除系统 Menu(就是ControlBox)的关闭选项即可!您自己可以先看看您现在使用的 Browser 左上方的系统 Menu,【关闭】选项是在第几个,不是第 6 个!是第 7 个,分隔线也算一个!分隔线才是第 6 个!
当我们移除了关闭选项之後,会留下一条很奇怪的分隔线,所以最好连分隔线也一并移除。而 Menu 的 Index 是从 0 开始,分隔线是第 6 个,所以 Index = 5。
修正:为了让程序码在 Windows NT 也能运作正常,将各 Integer 型态改成 Long。89.05.04
'抓取系统 Menu 的 hwnd Private Declare Function GetSystemMenu Lib ”user32“ Alias ”GetSystemMenu“(ByVal hwnd As Long, ByVal bRevert As Long)As Long '移除系统 Menu 的 API Private Declare Function RemoveMenu Lib ”user32“ Alias ”RemoveMenu“(ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long)As Long '第一个参数是系统 Menu 的 hwnd '第二个参数是要移除选项的 Index
//////////////////////////////////////////////////////////////////////////////////// 如何制作透明的表单(Form)?
请在声明区中放入以下声明
Const GWL_EXSTYLE =(-20)Const WS_EX_TRANSPARENT = &H20& Const SWP_FRAMECHANGED = &H20 Const SWP_NOMOVE = &H2 Const SWP_NOSIZE = &H1 Const SWP_SHOWME = SWP_FRAMECHANGED Or SWP_NOMOVE Or SWP_NOSIZE Const HWND_NOTOPMOST =-2
Private Declare Function SetWindowLong Lib ”user32“ Alias ”SetWindowLongA“(ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long)As Long Private Declare Function SetWindowPos Lib ”user32“(ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long)As Long
在 Form_Load 使用的范例如下:
Private Sub Form_Load()SetWindowLong Me.hwnd, GWL_EXSTYLE, WS_EX_TRANSPARENT
SetWindowPos Me.hwnd, HWND_NOTOPMOST, 0&, 0&, 0&, 0&, SWP_SHOWME Me.Refresh End Sub
//////////////////////////////////////////////////////////////////////////////////// 如何在 Menu 中加入美美的图案?
在模组中加入以下程序码:
Declare Function GetMenu Lib ”user32“(ByVal hwnd As Long)As Long
Declare Function GetSubMenu Lib ”user32“(ByVal hMenu As Long, ByVal nPos As Long)As Long
Declare Function GetMenuItemID Lib ”user32“(ByVal hMenu As Long, ByVal nPos As Long)As Long
Declare Function SetMenuItemBitmaps Lib ”user32“(ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long, ByVal hBitmapUnchecked As Long, ByVal hBitmapChecked As Long)As Long
Public Const MF_BITMAP = &H4&
Type MENUITEMINFO cbSize As Long fMask As Long fType As Long fState As Long wID As Long hSubMenu As Long hbmpChecked As Long hbmpUnchecked As Long dwItemData As Long dwTypeData As String cch As Long End Type
Declare Function GetMenuItemCount Lib ”user32“(ByVal hMenu As Long)As Long
Declare Function GetMenuItemInfo Lib ”user32“ Alias ”GetMenuItemInfoA“(ByVal hMenu As Long, ByVal un As Long, _ ByVal b As Boolean, lpMenuItemInfo As MENUITEMINFO)As Boolean
Public Const MIIM_ID = &H2 Public Const MIIM_TYPE = &H10 Public Const MFT_STRING = &H0&
在 Form 中加入一个 PictureBox,属性设定为: AutoSize = True Picture =.bmp(尺寸大小为 13x13,不可设定为.ico)
在 Form_Load 中的程序码如下:
Private Sub Form_Load()'取得程序中 Mennu 的 handle hMenu& = GetMenu(Form1.hWnd)'取得第一个 submenu 的 handle hSubMenu& = GetSubMenu(hMenu&, 0)'取得 Submenu 第一个选项的 menuId hID& = GetMenuItemID(hSubMenu&, 0)'加入图片
SetMenuItemBitmaps hMenu&, hID&, MF_BITMAP, Picture1.Picture, Picture1.Picture '在一个 Menu 选项中您一共可以加入二张图片 '一张是 checked 状态用,一张是 unchecked 状态用 End Sub
89、如何把小图片填满 Form 成为背景图?
对于这个问题,我看过很多方法,有的方法很麻烦,要声明一大堆 Type,用一大堆的 API,但是有一个最笨但我认为最好的方法如下:(就好像拼磁砖一样,不用任何 API, 不必声明任何 Type)
在 Form 中放一个 PictureBox,Picture 属性设定为某一张小图,AutoSize 属性性设定 True,完成的模组如下:
Sub PictureTile(Frm As Form, Pic As PictureBox)Dim i As Integer Dim t As Integer Frm.AutoRedraw = True Pic.BorderStyle = 0 For t = 0 To Frm.Height Step Pic.ScaleHeight For i = 0 To Frm.Width Step Pic.ScaleWidth Frm.PaintPicture Pic.Picture, i, t Next i Next t End Sub
PictureTile 这个模组共有二个参数,第一个是表单名称,第二个则是 PictureBox 的名称。以下为一应用实例:
Private Sub Form_Load()PictureTile Me, Picture1 End Sub
90、如何把小图片填满 MDIForm 成为背景图?
以下这个范例,要:
1、一个 MDIForm:不必设定任何属性。
2、一个 Form1:不一定是 MDIChild,最好 MDIChild 为 False,但是 AutoRedraw 设成 True。
3、Form1 上面放一个隐藏的 PictureBox:名称为 Picture1,不必设定 Picture 属性。
4、一张图片的完整路径。
'将以下模组放入 MDIForm 的声明区中:
Sub TileMDIBkgd(MDIForm As Form, bkgdtiler As Form, bkgdfile As String)If bkgdfile = ”“ Then Exit Sub Dim ScWidth%, ScHeight% ScWidth% = Screen.Width / Screen.TwipsPerPixelX ScHeight% = Screen.Height / Screen.TwipsPerPixelY Load bkgdtiler bkgdtiler.Height = Screen.Height bkgdtiler.Width = Screen.Width bkgdtiler.ScaleMode = 3 bkgdtiler!Picture1.Top = 0 bkgdtiler!Picture1.Left = 0 bkgdtiler!Picture1.Picture = LoadPicture(bkgdfile)bkgdtiler!Picture1.ScaleMode = 3
For n% = 0 To ScHeight% Step bkgdtiler!Picture1.ScaleHeight For o% = 0 To ScWidth% Step bkgdtiler!Picture1.ScaleWidth bkgdtiler.PaintPicture bkgdtiler!Picture1.Picture, o%, n% Next o% Next n%
MDIForm.Picture = bkgdtiler.Image Unload bkgdtiler End Sub
以下为一应用实例:
Private Sub MDIForm_Load()TileMDIBkgd Me, Form1, ”c:windowsTiles.bmp“ End Sub
//////////////////////////////////////////////////////////////////////////////////// 关闭指定的程序
要做到像 Task Manager 一样,可以关闭指定的程序,方法如下:
在声明区中放入以下声明:(16位 改成 win31 API)
Declare Function FindWindow Lib ”user32“ Alias ”FindWindowA“(ByVal lpClassName As String, ByVal lpWindowName As String)As Long
Declare Function PostMessage Lib ”user32“ Alias ”PostMessageA“(ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any)As Long
Public Const WM_CLOSE = &H10
以下之范例示范如何关闭一个视窗标题(Caption)为 【小算盘】的程序:
Dim winHwnd As Long Dim RetVal As Long winHwnd = FindWindow(vbNullString, ”小算盘“)Debug.Print winHwnd If winHwnd <> 0 Then RetVal = PostMessage(winHwnd, WM_CLOSE, 0&, 0&)If RetVal = 0 Then
MsgBox ”Error posting message.“ End If Else MsgBox ”并未开启小算盘程序.“ End If
//////////////////////////////////////////////////////////////////////////////////// 如何隐藏及再显示鼠标
很简单,只用到了一个 ShowCursor API,参数也很简单,只有一个 bShow,设定值如下:
True:显示鼠标 / False:隐藏鼠标
Declare Function ShowCursor Lib ”user32“ Alias ”ShowCursor“(ByVal bShow As Long)As Long
//////////////////////////////////////////////////////////////////////////////////// 如何从您的应程序中结束 Windows 重开机?
很多软件在 Setup 完之后都会自动关机重开机,以便让某些设定值可以生效,其实这个功能很简单,只要几行指令就可以做到了!
关键就是要使用 ExitWindowsEx 这个 API,这个 API 只有二个参数,第一个参数是一个 Flag,目的是要告诉 Windows 要以什么方式关机,在下面的声明中会列出可用的 Flag 常数值,至于第二个参数则是一个保留值,只要设定成 0 就可以了。
很重要的一点是:如果您想要让关机动作更顺利,记得要 Unload 您的程序!
'在声明区中(Bas Module / Form Module)加入以下声明:
Public Const EWX_LOGOFF = 0 '这四个常数值可以并用 Public Const EWX_SHUTDOWN = 1 Public Const EWX_REBOOT = 2 Public Const EWX_FORCE = 4 Declare Function ExitWindowsEx Lib ”user32“ Alias ”ExitWindowsEx“(ByVal uFlags As Long, ByVal dwReserved As Long)As Long
'实例:如果您想强迫关机重开机,程序码如下:
ret = ExitWindowsEx(EWX_FORCE OR EWX_REBOOT, 0)
//////////////////////////////////////////////////////////////////////////////////// 如何用 VB 启动其他程序或开启各类文件?
要在 VB 中启动其他程序或开启各类文件,最简单的方法就是使用 Shell 函数,例如:要开启 C:Test.txt 这个文字文件,则要启动记事本来开启这个文件案,程序如下:
Dim RetVal As Long RetVal = Shell(”C:WindowsNotepad.exe C:Test.txt“, 3)'3代表视窗会最大化,并具有驻点,细节请查 Help
以上的语法虽然很简单,但有一个风险,若是我们不知道开启文件的执行文件位置,则程序便会有错误产生,尤其一般软件在安装的时候都可以让使用者自行选择安装目录,所以执行文件的路径不能写死在程序中,要解决这个问题,就是在注册文件中找到该副文件名之启动程序位置,再放入 Shell 中。
但是以上的作法必须熟悉注册文件,而且必须使用 Windows API 来 Call(注册文件的存取以后会有专文来说明),如果您对注册文件的存取及 API 的使用都很纯熟的话,当然没问题,但是有些人对于注册文件会有畏惧,这时候,您可以使用下面的方法:
Shell(”Start C:Test.txt“)
您完全不用知道这份文件的启动程序是什么?它放在什么地方?参数 Start 便会自动依照附文件名到注册文件中找到启动程序来开启该份文件案!不赖吧!
注一:在 Windows 95/98/NT平台中, 什么副文件名之文件案, 该由什么执行文件来启动, 都设在关联中,代码为 HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExtensions
例如: 名称为 ”.DOC“ 之资料为 ”C:Progra~1Micros~2OfficeWINWORD.EXE ^.DOC“
名称为 ”.TXT“ 之资料为 ”notepad.exe ^.txt“
注二:使用 Start 之唯一缺点为 ”会比直接指定执行文件稍为慢 0.5-1 秒钟.“
//////////////////////////////////////////////////////////////////////////////////// 如何找出 Windows 目录的正确路径?
有时候我们在程序中必须用到 Windows 的目录,以存取 Windows 目录下的文件,照理说,这应该是最简单的功能,前提是每个人在 Setup Windows 必须采用 Windows 的预设目录名称,也就是 C:Windows,但是常常不是这样,有时候由於要使新旧版本共存,或者其他原因,有人会将 Windows 目录改成 c:win95、c:win98、Windows95 或 Windows98......若是程序中必须用到 Windows 目录,要找到正确的路径,做法如下:
'在声明区中加入以下声明:
Const MAX_PATH = 260
Private Declare Function GetWindowsDirectory Lib ”kernel32“ Alias ”GetWindowsDirectoryA“(ByVal lpBuffer As String, ByVal nSize As Long)As Long
Public Function GetWinPath()Dim strFolder As String Dim lngResult As Long strFolder = String(MAX_PATH, 0)lngResult = GetWindowsDirectory(strFolder, MAX_PATH)If lngResult <> 0 Then GetWinPath = Left(strFolder, InStr(strFolder, Chr(0))1 Next lNum sGetFile = Mid(sGetFile, 2)'得到文件名 MsgBox sGetFile
//////////////////////////////////////////////////////////////////////////////////// 如何防止使用者按下 CTRL + ALT + DEL
有些时候,我们的应用程序执行时,不希望使用者按下 CTRL + ALT + DEL 来异常结束程序或关机,这时候我们可以在启动程序时,将 CTRL + ALT + DEL 功能键之功能取消,然后在结束程序之前,再从新恢复 CTRL + ALT + DEL 之功能。
在模组声明区中加入以下声明及模组:
Declare Function SystemParametersInfo Lib ”user32“ Alias ”SystemParametersInfoA“(ByVal uAction As Long, ByVal uParam As Long, lpvParam As Any, ByVal fuWinIni As Long)As Long
Public Const SPI_SCREENSAVERRUNNING = 97
Public Sub Disable_Ctrl_Alt_Del()'让 CTRL+ALT+DEL 失效 Dim AyW As Integer Dim TurFls As Boolean
AwY = SystemParametersInfo(SPI_SCREENSAVERRUNNING, True, TurFls, 0)End Sub
Public Sub Enable_Ctrl_Alt_Del()'让 CTRL+ALT+DEL 恢复功能 Dim AwY As Integer Dim TurFls As Boolean
AwY = SystemParametersInfo(SPI_SCREENSAVERRUNNING, False, TurFls, 0)End Sub
'实际使用时,在 Form 中加入以下程序码:
Private Sub Form_Load()Disable_Ctrl_Alt_Del End Sub
Private Sub Form_Unload(Cancel As Integer)Enable_Ctrl_Alt_Del End Sub
//////////////////////////////////////////////////////////////////////////////////// 如何取得文件大小?
VB6 提供了一个新的物件模型,叫做 FSO(File System Object)物件模型,运用它,我们可以很方便的处理磁盘、资料夹和文件的一些动作。
FSO 物件模型含有好几个物件,其中有一个 File 物件是用来求得文件的相关资讯,在目前这个主题,我们就可以使用 File 物件!它有一个属性是 Size,对文件来说就是指文件的大小(单位为位元组)。(注一)
虽然使用 File 物件的 Size 属性就可以求得文件的大小,但是它有以下二个缺点:
1、只能用于 VB6 以后的版本。
2、它不是 VB6 内定的功能,必须另外引用 Scrrun.dll(Microsoft Scripting Runtime)才可以!
以下的二个方法就可以使用在所有的 VB 版本中(含 VB6),而且是 VB 内定的功能:
1、FileLen 函数:返回一个 Long,代表一个文件的长度,单位是位元组。
语法:FileLen(pathname)' pathname 是全路径之文件名称 适用:取得一个尚未开启的文件的长度大小(注二)
2、LOF 函数:返回一个 Long,单位为位元组,用来代表由 Open 陈述式所开启的文件之大小。
语法:LOF(filenumber)' filenumber 是一个文件代码 适用:取得一个已开启的文件的长度大小
注一:File 物件的 Size 属性除了可以求得一个文件的大小,也可以用来取得整个目录的所有文件大小!
注二:使用 FileLen 函数时,如果所指定的文件正在开启中,则所返回的值是这个文件在开启前的大小。
//////////////////////////////////////////////////////////////////////////////////// 如何移除或更改桌面背景的底色图案(Wallpaper)?
SystemParametersInfo 这个 API 可以设定许多 Windows 系统的功能参数,而其中一个参数就是桌面底图!通常一般的使用者会透过控制面板中的【显示器】来设定桌面底图。
在底下的范例中,我们使用 SPI_SETDESKWALLPAPER 这个参数及图片文件名称来设定新的桌面底图,同时使用 SPIF_SENDWININICHANGE 来通知各个视窗这个改变。
'在表单的声明区中加入以下声明及常数:
Private Declare Function SystemParametersInfo Lib ”user32“ Alias ”SystemParametersInfoA“(ByVal uAction As Long, ByVal uParam As Long, ByVal lpvParam As String, ByVal fuWinIni As Long)As Long
Const SPI_SETDESKWALLPAPER = 20 Const SPIF_UPDATEINIFILE = &H1 Const SPIF_SENDWININICHANGE = &H2
'在表单上加入一个 CommandButton(Command1)来移除桌面底图,程序码如下:
Private Sub Command1_Click()Dim X As Long X = SystemParametersInfo(SPI_SETDESKWALLPAPER, 0&, ”(None)“, SPIF_UPDATEINIFILE Or SPIF_SENDWININICHANGE)MsgBox ”桌面底图(Wallpaper)已经被移除“ End Sub
'在表单上加入另一个 CommandButton(Command2)来更改桌面底图,程序码如下:
Private Sub Command2_Click()Dim FileName As String Dim X As Long FileName = ”c:windowstest.bmp“ X = SystemParametersInfo(SPI_SETDESKWALLPAPER, 0&, FileName, SPIF_UPDATEINIFILE Or SPIF_SENDWININICHANGE)MsgBox ”桌面底图(Wallpaper)已经被更改“ End Sub
//////////////////////////////////////////////////////////////////////////////////// 一个快速注册 DLL 及 OCX 的方法
有时候我们在 VB 中要引用某一个 DLL 或 OCX 时,会出现文件未注册的讯息,这时,我们可以使用人工注册的方法,也就是直接在命令列中使用 regsvr32.exe 来做,做法如下:
文件注册:C:WindowsSystemRegsvr32.exe C:WindowsSystemTest.ocx 取消注册:C:WindowsSystemRegsvr32.exe /u C:WindowsSystemTest.ocx
这些动作我们也可以直接写到程序中,使用 Shell 来执行,但是我现在要说的,都不是上面提到的方法!
注意看罗!方法如下:
1、在资源管理器中找到 C:WindowsSystemRegsvr32.exe 并【复制】(按鼠标右键选复制)
2、将目录移到 C:WindowsSendTo 后,执行【贴上快捷方式】(按鼠标右键选贴上快捷方式)
3、将快捷方式名称改成【REGISTER】
4、OK
现在,如果您想替某一个文件做注册动作,例如:C:WindowsSystemTest.ocx,您只要打开资源管理器,找到 C:WindowsSystemTest.ocx,按鼠标右键选【传送到】【REGISTER】即可完成注册动作了!
注:有一个地方要注意的是,Regsvr32.exe 只能注册 32 位的文件!如果要用它来注册 16 位的文件,会有错误讯息产生。
//////////////////////////////////////////////////////////////////////////////////// 如何用TextBox打开和保存文件
作为轻量级的控件,TextBox控件使用率很高,但相关的资料极少谈及如何用TextBox控件打开和保存文件,大都采用回避的态度,对VB初学者带来很多不便。笔者近日为友人做一个英文朗读软件,按友人的要求,软件要能象MS的记事本那样能打开和保存文档。其实实现方法并不复杂,现将心得写出来,希望对大家有帮助。如果您有更好的方法,请来信:handanfang@163.net。
'新建标准EXE,加入一个TextBox控件,一个公共对话框,两个菜单。
'打开
Private Sub mnuOpen_Click()CommonDialog1.Filter = ”文档文件(*.txt)|*.txt|所有文件(*.*)|*.*“ CommonDialog1.ShowOpen Open CommonDialog1.FileName For Input As #1 Text1.Text = StrConv(InputB$(LOF(1), 1), vbUnicode)Close #1 End Sub
'保存
Private Sub mnuSave_Click()On Error Resume Next
CommonDialog1.Filter =”文档文件(*.txt)|*.txt|所有文件(*.*)|*.*“ CommonDialog1.ShowSave Open CommonDialog1.FileName For Output As #1 Print #1, Text1.Text Close 1 End Sub
TextBox只支持打开64K以下的文件,建议最好设置出错处理。以上程序在PWin98、VB6.0下调试通过。
//////////////////////////////////////////////////////////////////////////////////// 如何判断目前文件资源管理器中,文件名称之扩展文件名是显示或隐藏?
由于我在集团性的资讯处工作,所负责的公司系统有的是属于外点,例如润泰建设有个单位是行销业务处,他们的工作是卖公司盖的房子,所以他们的业务人员平常都是待在各工地的接待中心,我替他们开发的销售系统在工地的部份是属于单机作业的,使用 Access 资料库,每一个星期资料回传总公司一次。业务人员由于流动性大,不太了解系统,有时候,系统出了问题,业务人员又搞不清楚状况,于是我会要求他们将资料库 sale.mdb 回传公司,结果,常闹笑话,原来他们回传公司的,常常不是 sale.ldb 就是 sale.exe,为什么呢?
原因很简单,因为他们的文件资源管理器中,设定了将扩展文件名隐藏起来,结果只看到三个不同图示的 sale 文件(分别是 Sale.mdb、Sale.ldb、Sale.exe),不太会操作的业务人员根本分不清楚那一个图示的 sale 文件才是资料库文件案!
我们在 VB 的程序中要如何判断,目前文件资源管理器中的设定是否显示扩展文件名呢?
Private Declare Function GetFileTitle Lib ”comdlg32.dll“ Alias ”GetFileTitleA"(ByVal lpszFile As String, ByVal lpszTitle As String, ByVal cbBuf As Integer)As Integer Private Function HasExtension(sFileName As String)As Long Dim sTemp As String Dim lTemp As Long
sTemp = String(1, 0)lTemp = GetFileTitle(sFileName, sTemp, Len(sTemp))If lTemp < 0 Then HasExtension =-1: Exit Function sTemp = String(lTemp, 0)Call GetFileTitle(sFileName, sTemp, Len(sTemp))
If(Left$(Right$(Left$(sTemp, lTemp网站导航诚邀加盟友情链接-赞助本站 Copyright© 1999-2004 Programfan.com.All Rights Reserved 网站制作&维护:Hannibal Email: yaoz@163.com 网站合作及广告联系:(021)28540908