如何在memo的光标所在处插入一些特殊的符号?

Juddy 2000-12-25 02:03:00
我想在memo的光标所在处插入一些特殊的符号,就象word一样,如何实现呢?memo的光标位置是用CaretPos属性吗?
...全文
213 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Kingron 2000-12-26
  • 打赏
  • 举报
回复
插入文字很简单
memo.selstart:=你的要插入的位置;
memo.seltext:='要插入的文字';
stonejhao 2000-12-26
  • 打赏
  • 举报
回复
其实Memo就是Multiline的Edit(从VCL的Source中很清楚,可以查一下她CreateParams中的CreateSubClass),所以他为Windows的一个标准控件,你可以用相应的RichEdit Or DBRichEdit实现你的规格(you can use RichEdit do what you want)
BCB 2000-12-26
  • 打赏
  • 举报
回复
WORD是采其它技术,如OLE之类,
好象不是简单的Memo;
Juddy 2000-12-26
  • 打赏
  • 举报
回复
难道没人知道吗?
Juddy 2000-12-25
  • 打赏
  • 举报
回复
我觉得不对。我是想插入文字,而不是键值。如果是这样,文字写在哪呢?
gameboy999 2000-12-25
  • 打赏
  • 举报
回复
哦,原来是这样,好说呀,既然用户已经定位了光标,你所做的就很简单,
用postmessage(memo1.handle,WM_KEYDOWN,virtual_keyname,0,0);
//好象我写错了,不过不要紧,查查资料马上就可以得到。
Juddy 2000-12-25
  • 打赏
  • 举报
回复
我的意思是先选择一个位置,然后通过一个按钮选择一些特殊文字或符号,然后就在选择的位置出现了。
zxtyhy 2000-12-25
  • 打赏
  • 举报
回复
想知道
gameboy999 2000-12-25
  • 打赏
  • 举报
回复
想在memo的光标处插入特殊的符号,那你想不想保存呢?
memo的光标位置应该是caretpos,事实上,整个windows系统也就只有一个Caret,
如果想象word那样,那就只有自己写一个编辑器了。如果要求不是很高,试着获取memo的dc,然后用它自己作图,我想memo可能没有自己的canvas吧
介绍数据类型   表中的每一个字段由于其数据代表的意义的不同,因而都有特定的数据类型,例如:编号、姓名、出生年月三个字段的类型是各不相同的,在Visual FoxPro中,分别是用数值型(或整型)、字符型、日期型来表示的。熟悉各种数据类型可以帮助我们更快更好地对表进行操作。Visual FoxPro 6.0 表中的数据类型及简单的说明如下: 字符型:用于包含字母、汉字、数字型文本、符号、标点等一种或几种的字段,其中的数字一般不是用来进行数学计算的,如电话号码、姓名、地址。 货币型:货币单位,最多可有四位小数,如果小数部分超过四位则将通过四舍五入只保留四位,如商品价格。 数值型:整数或小数。如:成绩、年龄、 订货数量。如果有小数,需要指定小数位数,小数点包含在字段宽度中,占一个字节。它还支持十六进制数值。 浮点型:同数值型。 整 型:不带小数点的数值。 日期型:用来存放日期数值,Visual FoxPro 6.0(5.0)支持2000年型的日期数值。格式为:月/日/年。如:04/28/97。其中的年份如果输入97,则系统默认为1997,将光标条移到表中该字段时就会显示“04/28/1997”,如果输入小于48的数(如45)则系统默认为2045,因此,最好输入完整的年份。 日期时间型:格式为:月/日/年 时:分:秒 AM或PM。如:04/28/97 06:26:00 AM。 双精度型:双精度数值,如实验所要求的高精度数据。 逻辑型:当存储的数据只有两种可能时使用,用True(.T.)和False(.F.)表示。如:是否结婚。 备注型:又称内存型,它的长度随输入数据的长度而定,它的存储和表中其他数据是分开的,存放在扩展名为.FPT的文件中。 通用型:可以链接或嵌入OLE对象,如由其他应用程序创建的电子表格、WORD文档、图片。当链接OLE对象时,表中只包含指向数据的链接和创建OLE对象的应用程序的链接;当嵌入OLE对象时,表中包含OLE对象复件及指向创建此OLE对象应用程序的链接。 另外还有字符型(二进制)和备注型(二进制):前者同“字符型”相同,但是当代码页更改时字符值不变;后者同“备注型”相同,但是当代码页更改时备注不变。本课程中不涉及这两种类型,这里不做介绍。  1.2 使用“表设计器”创建表 使用“表设计器”可以方便、直接地创建表,我们既可以通过“项目管理器”的“数据”选项卡使用“表设计器”创建;也可以从“文件”菜单中使用“表设计器”创建。前一种方法在以后创建“项目管理器”时再介绍,这里仅介绍从“文件”菜单中创建表。  1.2.1 创建表结构 操作步骤:  从“文件”菜单中选择“新建”。出现如下对话框: 在复选框中选取“表”。  2、选取“新建文件”按钮,在“输入表名”中输入我们要建的表名,例如“职工表”,选取“保存”按钮。即出现表设计器:  这里有三个选项卡:“字段”、“索引”和“表”,默认的是“字段”选项卡。  3、从第一行开始依次输入(或选择): 在“字段名”选项卡中键入字段名。 在“类型”区域中,选择列表中的某一字段类型。注意,字段的数据类型应与将要存储在其中的信息类型相匹配 在“宽度”列中,设置以字符为单位的列宽,使字段的宽度足够容纳将要显示的信息内容。注意,一个汉字需占两个字符。 如果“类型”是“数值型”或“浮点型”,请设置“小数位数”框中的小数点位数。 如果希望为字段添加索引,就在“索引”列中选择一种排序方式。 如果想让字段接受 null 值,选中“NULL”。NULL无明确的值,它不等同于零或空格。一个 NULL 值不能认为比某个值(包括另一个 NULL 值)大或小,相等或不同。 字段名前的双向箭头表明是当前行。一行各项目之间用Tab键移动。  4、表的结构设置完毕后, 选取“确定”按钮,这时会出现一个选择框,询问“现在输入数据吗?”。此时,可以选择是立即开始输入记录,还是在以后准备好所有记录后再打开表进行输入。   1.2.2 在表中添加记录 1、在“文件”菜单中选择“打开”。  2、从“搜寻”下拉框中选择文件所在目录,从“文件类型”下拉框中选择“表”,即出现该目录下所有的表。如下图:  3、选择“职工表.dbf”,点取确定按钮。 4、从“显示”菜单“中选择“浏览”。如图:  5、这时出现“职工表”浏览窗口,并且“显示”菜单的内容发生变化,如下图,选择“追加方式”。  6、在“浏览”窗口中输入新的记录。当输入内容满一个字段时,光标会自动跳到下一个字段。内容不满时,用Tab键或回车键将光标移到下一字段。 7、当编辑备注型(memo)字段时,将光标条移到memo上,双击它或按Ctrl+Home键就可进入memo字段的输入窗口进行输入、修改。完成后,单击窗口上的关闭按钮“X”或按Ctrl+w可以保存并关闭窗口。如不想保存,则按Esc键或Ctrl +Q。  8、进入通用型(gen)字段与备注型方法相同。进入编辑窗口后,打开“编辑”菜单,选择“插入对象”进入插入对象窗口。选择“新建”可以创建多种格式的图象。我们选择“由文件创建”,在“文件”框中输入插入对象的文件名,包括路径。   如果选择“链接”则只存储该图象的链接,而不把整个图象包括进通用型字段中。如果选择“显示为图标”则可以用图标表示插入的图象对象。这里我们两者都不选择。   按“确定”按钮,即完成照片的插入。  9、为方便输入,也可以从“显示”菜单中选择“编辑”来切换到“编辑”方式。在“编辑”方式下,列名显示在窗口的左边。   这样,一个表就创建完成了。这个表称为自由表。之所以称它自由表,是指它是孤立存在的,和其他表没有发生联系,既不能控制其他表,也不被其他表控制。它独立存在于任何数据库之外。   还可以在 Visual FoxPro 中创建另一种表--数据库表,它是数据库的一部分。我们将在数据库一课中讲到。 1.3 使用“表向导”创建表   创建新表还可以借助于“表向导”。利用“表向导”,可以随时创建新表。向导会提出一系列的问题,并根据回答建立一个表。这里只把步骤说一下,不详细介绍了。 步骤: 从“文件”菜单中选择“新建”。 选择“表”。 选择“表向导”按钮。如本节图一所示。 按照向导屏幕的指示进行操作。 也可以用其他方法使用“表向导”,例如:在“项目管理器”中使用。 返回 下一节 电脑报首页 网络学院首页

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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