制作象棋棋盘(如何打造令人惊叹的象棋棋盘)

本篇介绍, 如何用excel制作一个象棋棋盘并可以实现下棋功能

关于这个功能,其实道理也十分简单,无非就是一些图形加几个车马将帅。

通过对棋盘的了解,用直线画出棋盘,然后添加棋子,最后就开始厮杀了。

制作象棋棋盘

话不多说,先睹为快

红方棋局,开局就如上图,车马相士将炮兵,各就各位。

背景有点黑,马上开打。

蓝方棋局,同样也排好队型,不能乱,乱了方寸就败近矣。

车(这个字念ju)马象士帅

制作象棋棋盘

为了更直观看到下棋的场景,做了一个动态效果图,仔细看,一定不会失望。

制作象棋棋盘

功能介绍

设置了三个按钮,一个绘制棋盘,一个绘制棋子,一个清除棋局。

感觉已经可以完成一盘棋的功能了,当然了,为了公平合理,不设置悔棋。

制作象棋棋盘

棋盘的样子四平八稳,没有一点特色,几百年来就是这样。

看上去十分冷漠,战争嘛,没有温柔的,流血和失去生命的过程,没有人喜欢。

制作象棋棋盘

代码放送

主要代码:

ws.shapes.addshape(msoshapeoval, x, y, w, h)画圆形

ws.shapes.addline(x,y, xend, yend)画线条

绘制棋盘

sub addline() dim ws as worksheet set ws = activesheet dim r as integer, g as integer, b as integer r = 255 g = 250 b = 250 dim t as long, l as long, w as long, h as long t = 150 l = 100 w = 640 h = 720 dim linew as integer linew = 6 dim ls as shape dim ri as integer ri = 90 dim lw as integer lw = linew / 2 dim i as integer for i = 0 to 9棋盘横线 set ls = ws.shapes.addline(l, t + ri * i, w + l + ri - 10, t + ri * i) with ls with .line .style = msolinesingle .forecolor.rgb = rgb(r, g, b) if i = 5 or i = 4 then .weight = 30 .forecolor.rgb = rgb(200, 211, 0) .style = msolinesingle else .weight = 2 end if end with end with next i for i = 0 to 8棋盘竖线 set ls = ws.shapes.addline(l + ri * i, t, l + ri * i, h + t + ri) with ls with .line .style = msolinesingle .forecolor.rgb = rgb(r, g, b) .weight = 2 end with end with next iend sub

绘制棋子

sub addovalfont(sarr, n, irow, f) dim ws as worksheet set ws = activesheet dim o as shape dim x as long, y as long, w as long, h as long dim r as integer, g as integer, b as integer if f then r = 255 g = 25 b = 50 else r = 25 g = 50 b = 255 end if  x = 90 * n + 60 y = 100 * irow w = 90 h = w set o = ws.shapes.addshape(msoshapeoval, x, y, w, h) with o .fill.forecolor.rgb = rgb(r, g, b) with .textframe .verticalalignment = xlvaligncenter .horizontalalignment = xlhaligncenter .marginbottom = 10 .marginleft = 10 .margintop = 10 .marginright = 10 with .characters .text = sarr 棋子文字 with .font .size = 60 .bold = true .name = "隶书" .color = rgb(225, 255, 255) end with end with end with doevents end withend sub

棋盘布局

private sub commandbutton1_click()clearovalshapedim sarrsarr = array("车", "马", "相", "仕", "帅", "相", "仕", "马", "车")sarr3 = array("炮")sarr4 = array("兵")sarr2 = array("车", "马", "象", "士", "将", "象", "士", "马", "车")sarr5 = array("卒")dim n as integerfor n = 0 to ubound(sarr) call addovalfont(sarr(n), n, 1, true) call addovalfont(sarr2(n), n, 9, false)next ncall addovalfont(sarr3(0), 1, 3, true)call addovalfont(sarr3(0), 6, 3, true)for n = 0 to 8 step 2 call addovalfont(sarr4(0), n, 4, true)next ncall addovalfont(sarr3(0), 1, 7, false)call addovalfont(sarr3(0), 6, 7, false)for n = 0 to 8 step 2 call addovalfont(sarr5(0), n, 6, false)next nend sub

结尾

互动功能是第一次用excel来制作,整体效果很好,唯一比较难的是对图形位置定位,这个要有一定是数学计算能力,和图形大小变化,位移等等理解,做起来需要多次调试。

最后结果也不是十分精确,为了让整个棋盘显得像那么回事儿,做了不少重复无聊的调试。

有兴趣的朋友可以自己试着做一下。

免费的

【温馨提示】如果文章内容有帮助到您,别忘动动小手指分享给好友哦!

相关文章

  • 象棋美女唐丹和谁结婚了(唐丹这位象棋美女与谁共筑棋盘人生)

    象棋美女唐丹和谁结婚了(唐丹这位象棋美女与谁共筑棋盘人生)

    大家知道象棋界唯一的特级大师夫妻是谁吗?很多人可能第一想到的是吕钦、许银川等大佬。实际是另一对来自广东的情侣,他们就是许国义、陈丽淳。本篇的主人公女子棋后陈丽淳,一直有唐丹克星之称。在陈丽淳还没有夺得全国冠军之前,对上唐丹就特别来劲,86年出生的她,多次在唐丹的手下,拿下各种胜利。印象最深的有一次,陈丽淳马炮卒竟然击败了唐丹的马炮双兵,也是厉害了。

    销魂飞刀 2023-11-17 阅读 6637
  • 老梁说象棋名家各自特点(老梁揭秘,象棋名家们独特的棋艺风格,你了解多少)

    老梁说象棋名家各自特点(老梁揭秘,象棋名家们独特的棋艺风格,你了解多少)

    洪智胡荣华蒋川刘锦祺(左)霍文会(右)这位就是柳大华 当年的象棋五冠军广东名将吕钦孙勇证陶汉明等级分第一的王天一谢靖徐天红许银川特大张强特大张强许银川赵鑫鑫特大郑惟桐庄玉庭也许大家没见过这位,下面简单介绍一下这位就是《棋艺》杂志编辑部主编张志强老师。《棋艺杂志》是梁宏达老梁创办的。经过几经发展,现在已经风风火火。

    销魂飞刀 2023-11-04 阅读 3505
  • 中国象棋棋力最强的软件是什么(探寻中国象棋软件之巅——谁才是棋力最强的霸主)

    中国象棋棋力最强的软件是什么(探寻中国象棋软件之巅——谁才是棋力最强的霸主)

    本文从以下6个部分来全方位介绍中国象棋软件的来龙去脉:第一,中国象棋软件的发展简史第二,中国象棋软件的地球排名第三,人类与象棋软件实力差距第四,中国象棋软件展望和弱点第五,理性看待纯人和棋软下棋第六,如何分辨象棋软件主播第一部分:中国象棋软件的发展简史90年代中期,已经有中国象棋软件,此时的象棋软件非常粗糙,比如电脑的大局观差、开局不行、喜欢吃子、弃子取势分不清等等,县市级的棋手都可以轻松胜之。

    销魂飞刀 2023-11-16 阅读 1868
  • 中国象棋2017打不开(无法打开2017年的中国象棋)

    中国象棋2017打不开(无法打开2017年的中国象棋)

    天天象棋是一款多人在线的手机象棋游戏。那么电脑如何安装天天象棋呢?有两种方法可以让你在电脑上玩天天象棋。天天象棋方法一:如果电脑上有安装电脑管家1、打开电脑管家电脑管家2、打开软件管理,搜索:天天象棋搜索天天象棋3,点击安装。因为天天象棋是手机软件游戏,所以自动安装时会安装腾讯手游助手,所有功能与手机版天天象棋无二,但对于对电脑不太熟悉的朋友,可能有些麻烦。

    销魂飞刀 2023-11-13 阅读 1785
  • 山东象棋大师名单(山东象棋大师名单,谁是全国最强的山东象棋大师)

    山东象棋大师名单(山东象棋大师名单,谁是全国最强的山东象棋大师)

    今年,象棋的大战举办的较少,受到多重因素的影响,鲜有大的赛会。这不,在山东棋界,举行一项红强杯的大战,不限制参赛的棋手属地和人数,报名参战的棋手众多,多位大师、名手都齐聚于此。比赛奖金数万元,众多的棋坛特级大师、国家大师,以及业余杀手,省市冠军,全力拼杀,采取七轮积分制,单日内赛罢,闪电对决。结果经过激烈的比拼,来自山东的象棋省冠级好手赵勇霖扮演黑马角色,他以七战4胜3平积13分的战绩勇夺桂冠,称霸群雄。

    销魂飞刀 2023-11-13 阅读 1419