我想要绘制一个登录界面,因此需要绘制用于输入的文本框和提交的按钮!如果使用input和button标签来实现,那很容易!但是我被要求在html5.0中使用canvas来绘制它们。我已经在谷歌上搜索了两天,但仍然没有找到好的方法!有经验的人可以帮帮我吗?谢谢提前!
我非常建议使用HTML元素来实现这一功能。您可以使用CSS定位将它们覆盖在画布上,从而似乎它们是画布本身所绘制的一部分。
仅使用画布来创建此内容非常具有挑战性。
首先,您需要创建绘制输入框和按钮的例程。然后,您需要编写例程以绘制它们处于不同状态时的外观,例如按下按钮的状态。您还需要编写代码来处理在文本框中显示插入符号,处理用户键入的字符,添加代码以处理键事件以生成键,处理复制粘贴键组合、箭头键和单击文本的不同部分以移动光标等等...
还有许多其他事情要做。
真的。请使用HTML输入元素。根据您的问题,这是最好的选择。
如果你想要以专业或实际的目的来做这个,我同意你应该使用HTML,并使用绝对定位和透明背景将其覆盖在画布上。
然而,如果你只是把这个当作一个挑战,那么就像Jani说的那样,你需要为文本字段、光标和按钮编写例程。然后,编写一个函数,在按下键时触发onKeydown事件,并检查所按键的键码。然后在框中绘制相应的字母(Unicode在画布中是否有效?)。你还可以处理箭头键和回车键。确保在用户应该输入时不会选中其他元素或浏览器元素。
祝你好运 :)