TC官方合作论坛

 找回密码
 立即注册
查看: 516|回复: 3
打印 上一主题 下一主题

[已解决] 如何赋值

[复制链接]
跳转到指定楼层
楼主
发表于 2012-7-30 18:35:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
刚才看了新手六部曲第三课,于是想做一个动态图片,按照视频里的完成了,可是在最后给左边位置和右边位置定义赋值的时候却怎么也搞不好,后来直接赋值(水平位置<0),(水平位置>487)可行,可是我想学会最后那个 功能 逻辑 初始化()赋值的方法,求大神帮忙看看哪儿出错了,按照前2张图运行,图片只向右移动一格就又会向左移动。
附图


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

沙发
发表于 2012-7-30 19:18:59 | 只看该作者
首先你要先弄清楚,图片移动的整个过程,方向弄清楚、什么时候改往那边移动。做这类的实例,其实你可以先看完视频教程,然后琢磨清楚中间的道理了,然后关掉视频,自己从头开始。

整个过程不可能一步到位的,水平和垂直方向的一个做出来另外一个肯定也一样

先做水平的,先要弄清楚[左边位置][右边位置]到底在哪

坐标位置 = 0   右边位置 = 客户区宽度 - 图片宽度,我们假设一开始图片是加载到最右边的,那样 水平位置 = 右边位置

控件.设置位置("图片框1",水平位置,0,80,50,1)

这时  你运行下,看是不是图片加载到最右边,假设图片一开始拖在中间

是的话,你加个循环,让 水平位置 = 水平位置 -10

看是不是能从最右边一直移到最左边

可以了

你再想,移到最左边(即左边位置)就要停下来,往右移动,移到最右边,要停下来往左移到,就是要加判断进去


  1. if(向右) //水平图片初始位置在最右边,bool变量 向右 初始 为 假,所以先执行else下面的向左运动
  2. 水平位置 = 水平位置 +10
  3. if(水平位置 >右边位置)
  4. 向右 = false
  5. endif

  6. else //向左
  7. 水平位置 = 水平位置 -10
  8. if(水平位置<左边位置) //当移到最左边时候,向右 为 真,那下一次循环,就是执行上面的循环体了(向右运动)

  9. 向右=true
  10. endif
  11. endif
复制代码



一步一步下来,才能真正学到,不然你看着视频,照着他从上往下打下来,效果就没那么好

回复 支持 反对

使用道具 举报

板凳
发表于 2012-7-30 19:47:17 | 只看该作者
如果别人的回答对你有帮助, 记得点击最佳帖子右下角的"采纳",不要让别人的幸苦白费哦
回复 支持 反对

使用道具 举报

地板
 楼主| 发表于 2012-7-30 21:37:11 | 只看该作者
谢谢指导。
回复 支持 反对

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18043773号

GMT+8, 2025-10-13 18:52 , Processed in 0.147290 second(s), 25 queries .

Powered by 海安天坑软件科技有限公司

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表