怎样用语句将dw_1中的t_1的背景色改变为红色?

zhouhaijun2 2003-10-15 01:32:21
t_1类型为text,如题
执行dw_1.Object.t_1.backgroundcolor=RGB(255, 0, 0),程序报错。
...全文
128 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
langel 2003-10-15
  • 打赏
  • 举报
回复
考虑一下你的t_1所在的bound,在detail区的话,要加行号
银狐被占用 2003-10-15
  • 打赏
  • 举报
回复
用MODIFY()函数。

修改T_1.BACKGUOUND.COLOR。

就可以了。

具体查帮助。
zhouhaijun2 2003-10-15
  • 打赏
  • 举报
回复
不好意思,t_1的backgroud color属性原来为transparent,所以任凭我怎么该都不行,有劳各位了。
散分。
zhouhaijun2 2003-10-15
  • 打赏
  • 举报
回复
不行啊,你自己试一下,我用了dw_1.Object.t_1.Background.Color=RGB(255, 0, 0)没反应
(PB7.03)
chrisfy 2003-10-15
  • 打赏
  • 举报
回复
dw_1.Modify("t_1.Background.Mode='0'")
dw_1.Object.t_1.Background.Color=RGB(255, 0, 0)
chrisfy 2003-10-15
  • 打赏
  • 举报
回复
你写错了,应该是这样:
dw_1.Object.t_1.Background.Color=RGB(255, 0, 0)
Background与Color中间有个点
lmby 2003-10-15
  • 打赏
  • 举报
回复
dw_1.object.t_1.backgroung.color = 80269524

这语法是对的。

运行时候不变?不可能。
zhouhaijun2 2003-10-15
  • 打赏
  • 举报
回复
上面应该是dw_1.Object.t_1.color=RGB(255, 0, 0)
lmby 2003-10-15
  • 打赏
  • 举报
回复
你在t_1的属性中改background.color expression,看看有无变化。

看上去是对的哦。
zhouhaijun2 2003-10-15
  • 打赏
  • 举报
回复
使用dw_1.Object.color=RGB(255, 0, 0),字体颜色变成红色了
zhouhaijun2 2003-10-15
  • 打赏
  • 举报
回复
t_1是我在datawindow上加的一个text object
lmby 2003-10-15
  • 打赏
  • 举报
回复
你看写数据窗口中t_1的名字属性,
zhouhaijun2 2003-10-15
  • 打赏
  • 举报
回复
改成dw_1.Object.t_1.background.color=RGB(255, 0, 0)没报错,但是界面没有变化
zhouhaijun2 2003-10-15
  • 打赏
  • 举报
回复
“Error:Error accessing external object property backgroudcolor at line 8 in function modify_text_color of object w_skkquery”
lmby 2003-10-15
  • 打赏
  • 举报
回复
如果t_1是文本,是对的。

如果是text字段,要有行号。
wantsong 2003-10-15
  • 打赏
  • 举报
回复
用modify
lmby 2003-10-15
  • 打赏
  • 举报
回复
报错?什么错。
名字错了还是什么。否则是对的。
各种Dreamweaver 插件包括: persistent_layers 不管滚动条如何拉动,这个层在窗口的位置始终固定不变 P7_PowerToys_18 可以让你方便的插入代码,用开始和结束标签加入既存的代码等 justsoalt 用于在你的图片上加入alt标记,它可以利用模板一次为多张图片加入alt说明 calendarPopup 一个弹出日历表格,用以确保输入的日历是按照特定的格式进行输入的,主要特色包括:日历链接,按照需要的方式设定日历的格式,按照需要可以在日期项目间增加分隔符等等功能 MX95982_shortcutIconOB_v1 插入.icon图标效果 addToFavoritesBH 制作加入收藏夹的链接 Anchors 建立扩展的命令锚点 BustFrames 让其他网页无法将你的主页加载入框架页 Calendar 为指定月份建立日历 ClosePopupWindow 制作关闭弹出的窗口 CloseWindowOb 建立关闭当前窗口的链接 mm_flabutton_styles 为DW4增加几款新的Flash按钮样式 mx142100_mmflabuttonstyles 13款Flash Button,并带有.fla的源文件 mx196756_turkeyscounties 80多个国家的一个下拉菜单 FlashImage 响应鼠标事件的图片渐显渐隐效果 real_networks 在页面插入流式播放的Real视频和音频文件 MX131662_pdreloadxtension 从新加载Dreamweaver的各项插件,不用重复的启动关闭Dreamweaver了 DateStamp 插入一个日期,或者网页的最后更新日期 Email 插入一个Email的连接,可以自己指定标题、BB、BBC、以及message! ie55_scroll 自定义浏览器滚动条的特效CSS Marquee 插入滚动文字效果 scrubber 去除点击超级链接时的虚线显示 chromeless_win_wind 制作弹出无边浏览小窗口,现在网上最为流行的 scrollablearea 使用层制作IE可控制上下滚动的看板 right_click_menu_builder 右键菜单扩展功能 flashtext 制作仿Flash的文字效果 typewriter 让一段文字以打字的效果出现 gradient_text 在网页里生成一段色彩渐变的文字 footnote 增加一个弹出的注释,就像image 的alt=…… ie_favicon 你只需要一个漂亮的ico格式图片,您的地址栏IE图标将与众不同 favorite_menu 为DW增加一个Favorites 菜单,类似IE收藏夹 layer_transitions 层的多种转换特效 dhtml_tooltips 为页面或链接增加一个dHTML的脚注(即注释) insert_greeting 根据不同的时段插入不同的问候语 script_editor 让你更方便的编辑脚本,包括外部脚本 popup_menu_builder 帮助您轻松创建一个跨浏览器的弹出菜单 TableLines 文章文字各行间都有横线分离 alternate_table_rows 使表格行与行之间的背景色交替变换 print 支持三种打印页面连接,文字连接、图片连接 preloaddisplay 预先加载页面,如果你的网站下载的速度比较慢,用这个比较好。 swftext 将Drm和Flash结合起来了,选择文本,执行该Command,swf动画就轻易的生成了 SliderMenu 设计导航菜单的绝佳助手,可以用于导航菜单的设计,特别是导航项很多的场合 disable_view_source 让网页源代码无法观看 vmkp_flash_buttons Flash按钮 iframe 内帖窗口(页页效果) open_picture_window 打开一个与缩略图一样大小的窗口 MX128577_ultimatewindows 建立一个可自定义属性的弹出窗口,亦可建立一个居的窗口 WordCount 字数统计 PreviousPage 建立返回前一页的超链接 PageTransitions 进入、退出页面的过渡转场效果,比如从间打开、溶解...... Meta_Generator 网页 Meta 管理器,可以详细设置Meta Fix_Null_Links 把所有的“#”替换成“javascript”来避免一点击它,网页马上就翻到了顶部 advopenwindow 弹出窗口(窗口居、总在最前面、自动关闭、全屏、无边框窗口) averagedistribute 单元格平均分布 Quick_Title 建立文字型的Title说明 Open_Browser_Window+ 操作弹出式窗口升级版 StyleApplier 表格的鼠标触发效果 checkform 表单验证插件 Realplayer 嵌入网页Real播放器插件 BannerImageBuilder 创建多图片随机显示 CloseCW 方便的插入一个关闭当前页面的按钮,可以选择按钮、图片、或者文字3种方式 tooltips 制作注释 UI_components Flash UIComponent floatimg 在页面上制作的飘浮图片插件,没时间封装 mmJIK Macromedia亲自为Flash 5开发的插件,功能太强大了 MX186725_splash_window 也叫chromeless splash , 一种效果很不错的浏览器窗口 MX175723_DWinamp 可以方便的在DW控制Winamp,边工作,边听音乐 languagemenu 包括所有语言的下拉菜单(object) MX162506_persist_layer 不论浏览器的滚动条怎么拉,用这个插件插入的层总是保持在某个位置不动 MX156958_e-VueObject 插入e-Vue MPEG-4格式的文件 Sound 插入Midi、wav、Aiff等格式的声音文件 MX172878_sup_sub_ext 插入上标、下标 Videoembed 插入视频文件,还可以加上控制按钮 NowhereLink 插入一个空连接,点击后不会返回到页面顶部 ExternalJS 调用一个外部的.JS脚本语言文件 includeJSfile_hp 调用一个外部的.JS脚本语言文件,插入到<head>区域内 Addramesets 给你的Dreamweaver再加入14种框架模板(command) Title_for_Links 给文字连接加上说明(command) ChinaDW 功能是一个国省市自制区的下拉框 Xwindow 没有边框,没有Title的窗口 MX143626_GoBackorForward 类似于浏览器的前进和后退按钮,但是可以指定每次前进的次数 coolborder 平时插入的表格的border又粗又难看,用这个插件插入看看边框(object) Set_IE_Scrollbars 设置IE是否出现右边的滚动条,可以适用于单个,多个,整个站点的页面 MX174513_Super_Email 插入一个不打开客户端的默认邮件程序来发送email的超连接 iframei 一个面板插件,可以对iframe标签的属性进行设置(inspector) MX179510_flashbuttons 一些Flash Button,一共7款 X164476_nirvana_iframePack 一组关于iframe的插件,可以动态的改变iframe的页面 MX152319_save_all 在Drw的File菜单下加一个Save All命令,用来保存所有Dreamweaver窗口的文件 Layerfx 可以让层做绕定轴转动、震动、加速运动....... xp_jmail UD使用的插件。 Scrolling_Title IE标题栏的文字滚动的效果 RefreshPageLink 建立一个刷新当前页面的链接。 quick filter 使用CSS滤镜对图片进行快速设置(右键、目标另存为) adv_random_images 这是随机显示图片的新版本,可以定制图片的很多相关属性。 scrolling_status_bar 插入打字效果状态栏文字。 form_button_fever 使用文字或者图片取代submit、reset 按钮 compare_fields 用来验证表单内2个文本框的值是否相同,通常用来检验密码是否一致。并可以自定义抱错信息。 ASP Dream 很方便的插入ASP语句,具有向导模式 Ultra Close Window 直接关闭窗口,不弹出确认关闭的对话框 flat_button 用CSS改变了样式的文本框或按钮 format_css_4 规范化<style>代码,附带若干选项设置。 explore 在DW的Site窗口文件夹后在右键菜单添加一条“在资源管理器打开...”的命令
persistent_layers 不管滚动条如何拉动,这个层在窗口的位置始终固定不变 P7_PowerToys_18 可以让你方便的插入代码,用开始和结束标签加入既存的代码等 justsoalt 用于在你的图片上加入alt标记,它可以利用模板一次为多张图片加入alt说明 calendarPopup 一个弹出日历表格,用以确保输入的日历是按照特定的格式进行输入的,主要特色包括:日历链接,按照需要的方式设定日历的格式,按照需要可以在日期项目间增加分隔符等等功能 MX95982_shortcutIconOB_v1 插入.icon图标效果 addToFavoritesBH 制作加入收藏夹的链接 Anchors 建立扩展的命令锚点 BustFrames 让其他网页无法将你的主页加载入框架页 Calendar 为指定月份建立日历 ClosePopupWindow 制作关闭弹出的窗口 CloseWindowOb 建立关闭当前窗口的链接 mm_flabutton_styles 为DW4增加几款新的Flash按钮样式 mx142100_mmflabuttonstyles 13款Flash Button,并带有.fla的源文件 mx196756_turkeyscounties 80多个国家的一个下拉菜单 FlashImage 响应鼠标事件的图片渐显渐隐效果 real_networks 在页面插入流式播放的Real视频和音频文件 MX131662_pdreloadxtension 从新加载Dreamweaver的各项插件,不用重复的启动关闭Dreamweaver了 DateStamp 插入一个日期,或者网页的最后更新日期 Email 插入一个Email的连接,可以自己指定标题、BB、BBC、以及message! ie55_scroll 自定义浏览器滚动条的特效CSS Marquee 插入滚动文字效果 scrubber 去除点击超级链接时的虚线显示 chromeless_win_wind 制作弹出无边浏览小窗口,现在网上最为流行的 scrollablearea 使用层制作IE可控制上下滚动的看板 right_click_menu_builder 右键菜单扩展功能 flashtext 制作仿Flash的文字效果 typewriter 让一段文字以打字的效果出现 gradient_text 在网页里生成一段色彩渐变的文字 footnote 增加一个弹出的注释,就像image 的alt=…… ie_favicon 你只需要一个漂亮的ico格式图片,您的地址栏IE图标将与众不同 favorite_menu 为DW增加一个Favorites 菜单,类似IE收藏夹 layer_transitions 层的多种转换特效 dhtml_tooltips 为页面或链接增加一个dHTML的脚注(即注释) insert_greeting 根据不同的时段插入不同的问候语 script_editor 让你更方便的编辑脚本,包括外部脚本 popup_menu_builder 帮助您轻松创建一个跨浏览器的弹出菜单 TableLines 文章文字各行间都有横线分离 alternate_table_rows 使表格行与行之间的背景色交替变换 print 支持三种打印页面连接,文字连接、图片连接 preloaddisplay 预先加载页面,如果你的网站下载的速度比较慢,用这个比较好。 swftext 将Drm和Flash结合起来了,选择文本,执行该Command,swf动画就轻易的生成了 SliderMenu 设计导航菜单的绝佳助手,可以用于导航菜单的设计,特别是导航项很多的场合 disable_view_source 让网页源代码无法观看 vmkp_flash_buttons Flash按钮 iframe 内帖窗口(页页效果) open_picture_window 打开一个与缩略图一样大小的窗口 MX128577_ultimatewindows 建立一个可自定义属性的弹出窗口,亦可建立一个居的窗口 WordCount 字数统计 PreviousPage 建立返回前一页的超链接 PageTransitions 进入、退出页面的过渡转场效果,比如从间打开、溶解...... Meta_Generator 网页 Meta 管理器,可以详细设置Meta Fix_Null_Links 把所有的“#”替换成“javascript”来避免一点击它,网页马上就翻到了顶部 advopenwindow 弹出窗口(窗口居、总在最前面、自动关闭、全屏、无边框窗口) averagedistribute 单元格平均分布 Quick_Title 建立文字型的Title说明 Open_Brows
400个插件,下面的详细列表: mxp/ColdFusion的Include mxp/80多个国家的一个下拉菜单,在某些时候的确挺方便的 mxp/检查当前文件的兼容性和可能包含的错误,并会给出详细的检测报告 mxp/在代码编辑框选择一段脚本代码,然后使用这个插件,可以把这些代码放到一个单独的js文件 mxp/在Dreamweaver快速的插入一个Fireworks做好的图片,不过好象只能做空白图 :( mxp/这个插件用来代替Dreamweaver File菜单下的New Form Template命令。作用是可以侦测出站点内的模板,这样就直接打开了,而不象以前还需要在对话框选择 mxp/在代码编辑环境下,插入一个脚本函数,函数名和参数都可以自定义的 mxp/这个插件很有意思,让你的窗口从大变小,或者从小变大 mxp/用来更新Configuration-TagAttributeList.txt这个文件 mxp/插入文空格 mxp/Jet制作的飘浮图片插件,没时间封装,Redidea友情封装 mxp/Chromeless Windows标题bug修改版 mxp/使窗口过一段时间后自动关闭 mxp/用来做电子商务的插件。不过只停留在表面的html语句和form的action,没有涉及后台程序 mxp/替换Dreamweaver自带的show-hide layer behavior,从而使更好的支持Netscape 6 mxp/用来代替Dreamweaver自带的Set Text of Layer behavior,从而使得在Netscape 6下兼容 mxp/打开一个新窗口,并让窗口在屏幕上居 mxp/Chromeless Windows,比我做的X-window好。 mxp/可以联合Authorware, CourseBuilder extension for Dreamweaver ,UltraDev, Macromedia Flash Learning Extensions, and Director等等的一系列软件做一个教学站点 mxp/对当前文件生成一个备份文件,以便修改 mxp/在site窗口的文件上点一下右键就出现这个插件了。作用是把文件复制或者移动到某个文件夹 mxp/层的转换特效,2.0版 mxp/加入JSP的Include mxp/用表单外部的事件来提交表单 mxp/用表单外部的事件来控制表单的行为,包括提交,清空等等 mxp/可以对文本框的内容做多种限制,比如不包含空格、引号等等 mxp/在Dreamweaver的File菜单下加一个Print code命令,用来打印代码 mxp/Splash Window,也叫chromeless splash , 一种效果很不错的浏览器窗口 mxp/在代码编辑窗的点右键,可以快速跳转到特定的代码行 mxp/在site窗口的本地文件夹选择一个文件点右键,就可以打开当前文件所在的目录,很方便的 mxp/在代码编辑框点右键就可使用。该插件可以让插件编写者用一些Windows风格的对话框来和用户进行交互 mxp/创建一个JustSo风格的相册 mxp/插件开发者使用,用来Debug mxp/Dreamweaver的Menu.xml是记录Dreamweaver菜单信息的文件,由于某些原因,经常容易损坏,此插件可以创建备份文件并恢复 mxp/打开一个Web对话框窗口,也是很特别的一种,没有最大和最小化按钮 mxp/使一个多行的表格行和行之间颜色交替,像斑马线一样。2.0版本 mxp/可以倒出-倒入站点信息,方便其他开发者 mxp/插入e-Vue MPEG-4格式的文件 mxp/Mycomputer.com提供的一套Banner交换系统,使用起来需要注册,比较麻烦 mxp/MyComputer.com提供的一套站点访问跟踪系统,也是需要注册,使用麻烦 mxp/在页面加入一个SiteMiner.com搜索引擎的接口,MyComputer.com提供 mxp/在页面加入一个MyComputer.com提供的留言本,需要注册,使用麻烦 mxp/计算代码的字符个数 mxp/一个比Dreamweaver自带的Jump menu更好的下拉导航菜单 mxp/对Dreamweaver目录下的FtpExtensionsMap.txt文件进行编辑。此文件定义了某类型的文件以二进制或者文本方式ftp mxp/自动将窗口最大化 mxp/由MyComputer.com提供的一套投票程序,需要注册,使用烦琐 mxp/用来在Dreamweaver环境下编辑安装目录下的Extensions.txt文件,此文件记录的文件扩展名和文件类型的关系 mxp/加入一个指向邮件地址的连接,并可以自定
很有用的,大家都来吧;有编辑功能:Backspace键用于删除字符;上下左右键可以任意角度方向的移动 ;光标;Esc键用于退出本软件,同时提示是否保存,若输入Y,则软件将自动把已发送 ;的字符保存在指定文件夹,初始值指定为'c:\masm\L.txt'; ;聊天功能:发送字符串后,发送端自动换行;接收端有‘Rec:’字样提示收到了 ;字符;接收字符串基于断 ;;作者:xuehui869^_^电子邮箱:xuehui869@163.com^_^时间 :2008年3月27日23:35:11 DATA SEGMENT MEMORYBUFFER DB 1000 DUP(?) FILE DB 'c:\masm\L.txt' , 0 ;创建文件的文件名 ERROR_MESSAGE DB 0AH , 'error !' , '$' ;出错时的提示 MESSAGE DB 0AH , 'ok !$' ;操作成功后的提示 HANDLE DW ? ;保存文件号 SENDBUFFER DB 1000 DUP(?) DATA ENDS CODE SEGMENT ASSUME CS: CODE , DS:DATA START: ;主程序部分 MOV AX , DATA MOV DS , AX MOV SI,OFFSET SENDBUFFER MOV DI,OFFSET MEMORYBUFFER ;用于存储接收和已发送的数据 MOV BP,OFFSET SENDBUFFER ;用于判断发送区是否为空,以利于判断DEL键是否进行删除 ;MOV AH,0 ;这些背景色必须加在声明语句,在主循环不行 ;MOV AL,11000011B ;MOV AL,42H ;INT 10H MOV AH,0BH ;加边框 MOV BH,0 MOV BL ,200 INT 10H MOV AH , 35H ; MOV AL , 0CH ; INT 21H ;读取原0CH号断服务程序的地址 PUSH BX PUSH ES ;以上地址入栈保存(以便在程序退出时再恢复断矢量表的内容) MOV AX , CS ; MOV DS , AX ; MOV DX , OFFSET RECINTERRUPT ; MOV AH , 25H ; MOV AL , 0CH ; INT 21H ;修改断矢量表,将NET_INT位置登记为0CH号断服务程序的地址 ;以下初始化8250 MOV DX , 3FBH ;指向线路控制寄存器 MOV AL , 80H ;位7置1 OUT DX , AL ;发送此字节 MOV DX , 3F9H ;指向波特率除数的高字节 MOV AL , 0 ; 1200 BPS对应的高字节 OUT DX , AL ;发送此字节 DEC DX ;指向波特率除数的低字节 MOV AL , 60H ; 1200 BPS对应的低字节 OUT DX , AL ;发送此字节 ;MOV AL , 1BH ;数据长度为8位 , 1个奇偶校验位 , 偶校验 , 1个停止位 MOV AL , 13H ;数据长度为8位 , 无奇偶校验位 , 1个停止位 MOV DX , 3FBH ;指向线路控制寄存器 OUT DX , AL ;发送此字节 MOV DX , 3FCH ;设置MODEM控制寄存器 MOV AL , 0BH ;允许8250发断 OUT DX , AL MOV DX , 3F9H ;指向断允许寄存器 MOV AL , 1 ;允许数据接收准备好断 OUT DX , AL ;发送此字节 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;这一段很关键,但往往被遗忘 CLI ;关断,以便对断控制器8259A进行操作 IN AL , 21H ;读取断屏蔽寄存器的内容 AND AL , 0EFH ;将COM1断(即IRQ4引脚)的对应位置0,允许断。 OUT 21H , AL ;写入断控制器8259A STI ;开断 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;超级死循环 ,主要是发送程序部分 ,主程序循环,等待收到字符的断发生。; MOV AX , DATA MOV DS , AX WAITSENDSTRING: MOV AH,1 ; 键盘缓冲区是否有字符? INT 16H ; JZ WAITSENDSTRING ; 无,继续查询 MOV AH,0 ;从键盘缓冲区取字符到AL ,当读了之后,缓冲区清空;不然,键盘缓冲去一直有数据 INT 16H ; CMP AL,00011011B ;是否为退出键Esc JNZ A ;不是,转A继续判断 JMP EXIT ;是,转EXIT,进行程序退出处理 A: CMP AH,48H ;是否为“上”键 JZ KEY_UP ;是,转上处理程序 CMP AH,50H ;下 JZ KEY_DOWN CMP AH,4BH ;左 JZ KEY_LEFT CMP AH,4DH ;右 JZ KEY_RIGHT CMP AL,08H ; 接收到的数据是Del键吗 JNZ OK ; 不是,则转OK CMP BP,SI ;现在没有字符吗 ;本步的功能在于容错处理 JZ OK ; 是,则转OK,不进行删除 MOV AH,02H ;;不是,执行删除字符程序 MOV DL,08H ; DL ='Del'的ASCII码 INT 21H ; MOV DL,00H ; DL ='NULL'的ASCII码 INT 21H ; MOV DL,08H ; DL ='Del'的ASCII码 INT 21H ; DEC SI ;删除存储区内的一个字符 JMP WAITSENDSTRING KEY_UP: MOV AH,03H ;使光标上移 MOV BH ,00H INT 10H DEC DH MOV AH,02H INT 10H JMP WAITSENDSTRING KEY_DOWN: MOV AH,03H ;使光标下移 MOV BH ,00H INT 10H INC DH MOV AH,02H INT 10H JMP WAITSENDSTRING KEY_LEFT: MOV AH,03H ;使光标左移 MOV BH ,00H INT 10H DEC DL MOV AH,02H INT 10H JMP WAITSENDSTRING KEY_RIGHT: MOV AH,03H ;使光标右移 MOV BH ,00H INT 10H INC DL MOV AH,02H INT 10H B: JMP WAITSENDSTRING ;;;;;;;;;;;;;;;;;;;;;;;;;;;;向标准输出外设(如显示器)输出单个字符 OK: MOV AH,02H ; MOV DL,AL ; DL =输出字符的ASCII码 INT 21H ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;将从键盘缓冲区接收到字符串保存到Receivebuffer ;;;;;;;;;;;;;;;;;;数组,当遇到回车键时将该数组的字符串通过串口发送出去 MOV BYTE PTR[DI],AL ;将接收到的字符保存到存储区 INC DI MOV BYTE PTR[SI],AL ;将接收到的字符保存到发送缓冲区 INC SI CMP AL,0DH ; 接收到的数据是回车键吗? JNZ B ; 不是,则转WAITSENDSTRING;但是只有JMP指令才能实现far_label跳转,所以 ;采用此迂回办法 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;BIOS断此处还不能用,莫名其妙的出错 ;MOV AH,01H ;MOV AL,'A' ;MOV DX,0 ;INT 14H ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; 是,开始发送 ;由于在sendbuffer帧头加Receive字样,发送会出错,也只能采取这种迂回的办法了 MOV AL,00001010B ;;要使接收端换行使用回车键不行,使用LF换行 MOV DX,3F8H ; 串口发送数据端口地址 OUT DX,AL ; 把该字符发送到输出数据缓冲器 MOV AL,01010010B ;;R键 MOV DX,3F8H ; 串口发送数据端口地址 OUT DX,AL ; 把该字符发送到输出数据缓冲器 MOV AL,01100101B ;;e键 MOV DX,3F8H ; 串口发送数据端口地址 OUT DX,AL ; 把该字符发送到输出数据缓冲器 MOV AL,01100011B ;;c键 MOV DX,3F8H ; 串口发送数据端口地址 OUT DX,AL ; 把该字符发送到输出数据缓冲器 MOV AL,00111010B ;;回车键 MOV DX,3F8H ; 串口发送数据端口地址 OUT DX,AL ; 把该字符发送到输出数据缓冲器 MOV AL,00001010B ;; MOV DX,3F8H ; 串口发送数据端口地址 OUT DX,AL ; 把该字符发送到输出数据缓冲器 MOV SI,OFFSET SENDBUFFER ;恢复 SI初始值 SEND: MOV AL,BYTE PTR[SI] INC SI MOV DX,3F8H ; 串口发送数据端口地址 OUT DX,AL ; 把该字符发送到输出数据缓冲器 CMP AL,0DH ; 接收到的数据是回车键吗? JNZ SEND ; 不是,则转SEND,继续发送 MOV SI,OFFSET SENDBUFFER ;一次发送结束后,重新置位si MOV DL,0AH ; 换行 MOV AH,02H INT 21H JMP WAITSENDSTRING ;发送完,重新开始接收 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;接收断处理程序 RECINTERRUPT: CLI MOV AX , CS ; MOV DS , AX ; PUSH BX PUSH AX ; 暂存数据 PUSH DX MOV AH,41 ; MOV DL,AL ; DL =输出字符的ASCII码 INT 21H ; MOV DX,3F8H ; 端口接收数据端口地址 IN AL,DX ; 读取数据 AND AL,7FH ; 有效数据位为7位 MOV AH,02H ; 向标准输出外设(如显示器)输出单个字符 MOV DL,AL ; DL =输出字符的ASCII码 INT 21H ; CMP AL,0AH ; 接收到的数据是回车键吗? JNZ L2 ; 不是,则转L2 MOV DL,0AH ; 是,输出换行符换行 MOV AH,02H INT 21H L2: MOV AL , 20H ;发断结束命令(EOI) OUT 20H , AL ; POP DX ; POP AX POP BX STI ;CPU开断 IRET ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;退出程序 EXIT: ;保存处理 MOV AH,02H ; MOV DL,01010011B ; DL =输出字符的ASCII S INT 21H ; MOV AH,02H ; MOV DL,01100001B ; DL =输出字符的ASCII a INT 21H ; MOV AH,02H ; MOV DL,01110110B ; DL =输出字符的ASCII码 v INT 21H ; MOV AH,02H ; MOV DL,01100101B ; DL =输出字符的ASCII码 e INT 21H ; MOV AH,02H ; MOV DL,00111111B ; DL =输出字符的ASCII码 ? INT 21H ; MOV AH,02H ; MOV DL,01011001B ; DL =输出字符的ASCII码 Y INT 21H ; MOV AH,02H ; MOV DL,00H ; DL =输出字符的ASCII码 INT 21H ; MOV AH,02H ; MOV DL,01001111B ; DL =输出字符的ASCII码 o INT 21H ; MOV AH,02H ; MOV DL,01010010B ; DL =输出字符的ASCII码 r INT 21H ; MOV AH,02H ; MOV DL,00H ; DL =输出字符的ASCII码 INT 21H ; MOV AH,02H ; MOV DL,01001110B ; DL =输出字符的ASCII码 n INT 21H ; WAITSAVE: MOV AH,1 ; 键盘缓冲区是否有字符? INT 16H ; JZ WAITSAVE ; 无,继续查询 MOV AH,0 ;从键盘缓冲区取字符到AL ,当读了之后,缓冲区清空;不然,键盘缓冲去一直有数据 INT 16H ; CMP AL,01011001B ; 接收到的数据是Y键吗? JNZ EXITNOW ; 不是,则转OK JMP SAVE ;退出处理 EXITNOW: MOV AH , 25H ; MOV AL , 0CH ; POP ES ; POP BX ; INT 21H ;恢复断矢量表0CH号断服务程序的原地址。 MOV AH , 4CH ; INT 21H ;返回DOS SAVE: ;MOV AX , DATA ;MOV DS , AX MOV DX , OFFSET FILE MOV CX , 0 MOV AH , 3CH INT 21H ;创建文件,若磁盘上原有此文件,则覆盖 JC ERROR ;创建出错,转error处 MOV HANDLE , AX ;保存文件号 MOV BX , AX MOV BP , OFFSET MEMORYBUFFER SUB DI,BP MOV CX ,DI MOV DX , OFFSET MEMORYBUFFER ;用于计算发送的数目 ,同时是存储的原址 MOV AH , 40H INT 21H ;向文件写入16个字节内容 JC ERROR ;写出错,转error处 MOV DL,AH MOV AH,02H INT 21H MOV DL,AL MOV AH,02H INT 21H MOV BX , HANDLE MOV AH , 3EH INT 21H ;关闭文件 JC ERROR ;关闭文件出错,转error处 MOV DX , OFFSET MESSAGE MOV AH , 9 INT 21H ;操作成功后显示提示 JMP END1 ERROR: MOV DX , OFFSET ERROR_MESSAGE MOV AH , 9 INT 21H ;显示错误提示` END1: MOV AH , 4CH INT 21H JMP EXITNOW CODE ENDS ; END START

1,075

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧