当前位置: 首页 > wzjs >正文

视频结交网站怎么做近期的新闻消息

视频结交网站怎么做,近期的新闻消息,武汉哪家做营销型网站好,建设网站哪家最好编辑单元格 我们现在有了一个小编辑器,可以移动光标到不同的单元格之间。现在,我们想创建一个系统,可以编辑单个单元格。我们已经有了一个系统,但那个系统并不完善,因为它只允许你增加或减少1,这不太好。我…

编辑单元格

我们现在有了一个小编辑器,可以移动光标到不同的单元格之间。现在,我们想创建一个系统,可以编辑单个单元格。我们已经有了一个系统,但那个系统并不完善,因为它只允许你增加或减少1,这不太好。我们希望能够选中一个单元格,然后直接输入一个数字。这在任何编辑器中都是非常有用的功能。

键盘输入处理

上次我展示了如何从键盘获取按键,并将它们组合成一个字符串来输入内容。但今天,我们要更系统地来做这件事。我打算把这个功能封装在一个自己的函数里,我称之为do_keys。这样,我们可以在更新函数之前调用do_keys来处理键盘输入。

处理特殊按键

当我们按下P键时,会弹出一个菜单,这不是我们想要的。同样,按下回车键也会触发菜单。我们需要避免这种情况。我找到了一种方法,通过修改内存地址来暂时阻止菜单弹出。这样,当我们按下P键时,菜单就不会弹出了,但回车键仍然会触发菜单。不过,我们可以保留回车键作为打开菜单的一种方式。

编辑模式

现在,我想进入一种编辑模式,允许我在单元格中输入值。我会把所有的按键输入存储在一个变量中,当用户按下回车键时,再将这个变量的内容输入到数据数组中。这样做是为了避免在用户输入过程中改变单元格的值,直到用户准备好提交数据。

显示输入内容

为了在UI上显示正在输入的内容,我会在绘制整个表格后,在正在编辑的单元格上方绘制一个小的文本框,显示输入的内容。

光标和删除功能

接下来,我需要实现几个功能:显示光标、移动光标和删除字符。光标将是一个闪烁的小方块,可以左右移动。删除功能允许用户删除已经输入的字符。

实现光标闪烁

为了实现光标的闪烁效果,我使用了一个时间函数。通过检查时间的小数部分,我可以在特定的时间间隔内切换光标的显示状态,从而实现闪烁效果。

插入字符

当用户输入字符时,我需要将这些字符插入到光标所在的位置,而不是总是添加到字符串的末尾。这要求我重新组织字符串,将新字符插入到光标之前。

删除字符

删除字符的功能相对复杂一些。如果光标在字符串的末尾,我可以简单地删除最后一个字符。但如果光标在字符串的中间,我需要重新组织字符串,删除光标之前的字符。

pico-8 cartridge // http://www.pico-8.com
version 41
__lua__
--show cursor
--move the cursor
--backspacefunction _init()--- customize here ---#include shmup_myspr.txtfile="shmup_myspr.txt"arrname="myspr"data=myspr----------------------debug={}_drw=draw_table_upd=update_tablemenuitem(1,"export",export)reload(0x0,0x0,0x2000,"cowshmup.p8")curx=1cury=1scrolly=0scrollx=0poke(0x5f2d, 1)endfunction _draw()_drw()-- debug --cursor(4,4)color(8)for txt in all(debug) doprint(txt)end
endfunction _update60()dokeys()_upd()
endfunction dokeys()if stat(30) thenkey=stat(31)if key=="p" thenpoke(0x5f30,1)endelsekey=nilendend
-->8
--drawfunction draw_table()cls(2)--spr(0,0,0,16,16)if menu thenfor i=1,#menu dofor j=1,#menu[i] dolocal c=13if i==cury and j==curx thenc=7if _upd==upd_type thenc=0endendlocal mymnu=menu[i][j]bgprint(mymnu.w,mymnu.x+scrollx,mymnu.y+scrolly,13)   bgprint(mymnu.txt,mymnu.x+scrollx,mymnu.y+scrolly,c) endendendif _upd==upd_type thenlocal mymnu=menu[cury][curx]local txt_bef=sub(typetxt,1,typecur-1)local txt_cur=sub(typetxt,typecur,typecur)local txt_aft=sub(typetxt,typecur+1)txt_cur=txt_cur=="" and " " or txt_cur if (time()*2)%1<0.5 thentxt_cur="\^i"..txt_cur.."\^-i"endlocal txt=txt_bef..txt_cur..txt_aftbgprint(txt,mymnu.x+scrollx,mymnu.y+scrolly,7)end--[[for i=1,#data dofor j=1,#data[i] dobgprint(data[i][j],2+18*j,2+8*i,7)endend]]
endfunction refresh_table()--[[menu={{{txt="hello",cmd="say hello",x=2,y=2}}}]]--menu={}for i=1,#data dolocal lne={}for j=1,#data[i] doadd(lne,{txt=data[i][j],cmd="edit",cmdx=j,cmdy=i,x=-10+14*j,y=-4+8*i,w="   "})endadd(menu,lne)end
end
-->8
--updatefunction update_table()refresh_table()if btnp(⬆️) thencury-=1endif btnp(⬇️) thencury+=1endcury=mid(1,cury,#menu)if btnp(⬅️) thencurx-=1endif btnp(➡️) thencurx+=1endcurx=mid(1,curx,#menu[cury])local mymnu=menu[cury][curx]if mymnu.y+scrolly>110 thenscrolly-=1endif mymnu.y+scrolly<10 thenscrolly+=1endscrolly=min(0,scrolly)if mymnu.x+scrollx>110 thenscrollx-=1endif mymnu.x+scrollx<10 thenscrollx+=1endscrollx=min(0,scrollx)if btnp(❎) thenlocal mymnu=menu[cury][curx]if mymnu.cmd=="edit" then_upd=upd_typetypetxt=tostr(mymnu.txt)typecur=#typetxt+1endend
endfunction upd_type()if key thenif key=="\r" then-- enterlocal mymnu=menu[cury][curx]poke(0x5f30,1)typetxt=tonum(typetxt)if typetxt==nil thentypetxt=0enddata[mymnu.cmdy][mymnu.cmdx]=typetxt_upd=update_tablereturnelseif key=="\b" then--backspaceif typecur>1 thenif typecur>#typetxt thentypetxt=sub(typetxt,1,#typetxt-1)elselocal txt_bef=sub(typetxt,1,typecur-2)local txt_aft=sub(typetxt,typecur)typetxt=txt_bef..txt_aftendtypecur-=1endelseif typecur>#typetxt thentypetxt..=keyelselocal txt_bef=sub(typetxt,1,typecur-1)local txt_aft=sub(typetxt,typecur)typetxt=txt_bef..key..txt_aftendtypecur+=1endendif btnp(⬅️) thentypecur-=1endif btnp(➡️) thentypecur+=1endtypecur=mid(1,typecur,#typetxt+1)
end
-->8
--toolsfunction bgprint(txt,x,y,c)print("\#0"..txt,x,y,c)
endfunction split2d(s)local arr=split(s,"|",false)for k, v in pairs(arr) doarr[k] = split(v)endreturn arr
end
-->8
--i/o
function export()local s=arrname.."=split2d\""for i=1,#data doif i>1 thens..="|"endfor j=1,#data[i] doif j>1 thens..=","ends..=data[i][j]endends..="\""printh(s,file,true)debug[1]="exported!"
end
__gfx__
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00700700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00077000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00077000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00700700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
__map__
0000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

http://www.dtcms.com/wzjs/53583.html

相关文章:

  • 企业门户网站建设公司湖北疫情最新消息
  • ukidc做电影网站seo费用
  • 做网站分类模块的设计思路嘉兴seo外包平台
  • 南阳网站设计网络运营课程培训班
  • 上海制作网页哪家好win优化大师怎么样
  • 佛山市城市建设档案馆网站营销手段有哪些方式
  • 个人网站优秀好用的搜索引擎有哪些
  • 昆山建设招标信息网站直通车推广技巧
  • 上海网站注销吗百度一下了你就知道官网
  • 厦门专业网站制作寻找郑州网站优化公司
  • 做b2b网站可以和对方还价吗优秀软文案例
  • 网站建设推广语言网站优化查询
  • 网站开发编程语言域名查询万网
  • aspcms 生成网站地图网站优化网络推广seo
  • 代码编写网站手机优化专家下载
  • 网站建设与维护报告总结seo网络推广公司排名
  • 怎样在百度上注册自己的公司新的seo网站优化排名 网站
  • 静态网站怎么制作手机百度app免费下载
  • 珠海 网站开发企业seo推广
  • 企业为什么做网站推广网店推广运营策略
  • 网站地图咋做余姚网站如何进行优化
  • 网站降权查询工具佛山百度推广公司
  • 天猫店铺购买黑河seo
  • 中学加强校园网站建设营销网站建设专家
  • 网站系统开发怎么做青岛网站建设维护
  • 网站建设意思软文营销平台
  • php做网站特效关键词在线听免费
  • 用html做女装网站在线crm系统
  • 改网站js代码南宁关键词优化服务
  • 网站开发公司属于什么行业排名优化关键词