永发信息网

Access 中 如何把半角变为全角,请告诉我这个函数怎么写,谢谢

答案:2  悬赏:30  手机版
解决时间 2021-01-25 06:47
  • 提问者网友:你挡着我发光了
  • 2021-01-24 22:24
Access 中 如何把半角变为全角,请告诉我这个函数怎么写,谢谢
最佳答案
  • 五星知识达人网友:举杯邀酒敬孤独
  • 2021-01-24 23:56
为了防止客户在输入的时候,错误地输入了全角(半角)字符,我们要通过程序将它转换成正确的半角(全角)字符,这是给定的函数。
<%
'****************************
'*参数说明:
'* str:要转换的字符串
'* flag:标记,为0时半转全,为非0时全转半
'* 返回值类型:字符串
'****************************
function DBC2SBC(str,flag)
dim i
if len(str)<=0 then
REsponse.Write("字符串参数为空")
exit function
end if
for i=1 to len(str)
str1=asc(mid(str,i,1))
if str1>0 and str1<=125 and not flag then
dbc2sbc=dbc2sbc&chr(asc(mid(str,i,1))-23680)
else
dbc2sbc=dbc2sbc&chr(asc(mid(str,i,1))+23680)
end if
next
End function
%>
全部回答
  • 1楼网友:雾月
  • 2021-01-25 00:18
思考了一段时间     查了一点资料     写了一些想法     解决了一些问题     有了一点体会         在开发应用系统时,结合数据进行处理,应用最多的是文本框对象,特别是进行中英文的输入时,来回切换非常繁琐,所以我们可以借助自定义子类,来实现中英文输入的自动切换。其步骤如下:         通过系统菜单栏“文件/新建/类…”启动“新类”对话框,填入类名:gstextbox,并设置父类为:textbox。按“确定”键进入类设计器画面。新增一个属性,来作为对象是否启动中文输入法的控制码。         通过系统菜单栏“类/新建属性…”启动“新建属性”对话框,按上表设置属性,其中可视性设为:公共。最后设置gotfocus与lostfocus事件过程:         gotfocus   event事件过程:         if   this是否中文         =imestatus(1)         else         =imestatus(0)         endif         lostfocus   event事件过程:         =imestatus(0)         到此,类已经定义完成,以后只要在设计表单时,通过表单控件“工具栏/查看类/添加…”把自定义类加入,并且设置“是否中文”属性即可实现中英文输入的自动切换。           15、在visual   foxpro中实现autonumber          用visual   foxpro设计一对多的关系数据库时,我们需要在主表建立一个主索引,在子表建立一个普通索引。在主表中添加记录时,必须保证被设置为主索引的字段没有重复的值。如果让用户来手工添加记录,有可能在被设置为主索引的字段中出现重复的值,从而导致数据库出错。在access中,有一个autonumber型的字段,由系统自动产生这些不可重复的值,避免了数据库的出错,也为用户带来了方便。   那么在visual   foxpro中如何实现这个功能呢?笔者的做法是编一个添加记录的小程序,当用户添加记录时,由自编的程序插入一个新记录,并产生新记录被设置为主索引的字段的值。示例如下:   有如下二表,people.dbf(主表)结构为id   n(3),name   c(8),jobdbf(子表)结构为id   n(3),job   c(10),我们在二表之间建立一对多关系,将people.dbf的id设置为主索引,将job.dbf的id设置为普通索引。添加people.dbf记录的程序如下:   ′insertpeople.prg:   calculate   max(id)   to   maxid ′查找现有id的最大值,存入maxid   insert   into   people   (id)   values   (maxid+1) ′插入新的记录,并使新记录的id=maxid+1   实际应用时,设计一个添加按钮(commandbutton1),使其caption=“添加”,在其click事件中加入代码:   ′commandbutton1.click   do   insertpeople   如表中记录不经常删除,这一方法比较适用。当表中的数据常常删除时,此方法有一个缺点,仍以people.dbf为例,假设people.dbf中有3条记录,id分别为1、2、3,当用户删除(delete   and   pack)id为2的记录后再添加记录,新添加的记录id为4,而这时的愿望是使其id为2,否则的话,为id分配的3位number空间可能不够用。此时可修改insertpeople.prg如下:   ′insertpeople.prg:   select   people   for   i=1   to   999 ′让i在1~999之间循环   locate   for   (i==people.id) ′在people中查找i值是否重复   if   found()=.f.   insert   into   people   (id)   values   (i)   ′不重复的话,用此时的i值作为新记录的id值   exit ′中断循环   endif   endfor   在一对多关系中的多方(子表)添加记录时,为了实现与主表的关联,也可以用类似的方法实现 解决了自己的问题     不知道能否给他人启发
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯