QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
10天前
查看: 1956|回复: 4
收起左侧

[讨论结束] 汉字滚动显示问题

 关闭 [复制链接]
发表于 2008-1-26 01:22:15 | 显示全部楼层 |阅读模式 来自: 中国陕西西安

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

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

x
最近在写LED显示屏的程序,需要用到汉字滚动显示,显示原理不太清楚,不知哪位大虾能够指教?最好是有C程序例程!谢谢
发表于 2008-1-26 01:33:01 | 显示全部楼层 来自: 中国广西防城港
const   . l$ }6 B2 x5 f5 ~+ G' t3 r: E
      WM_MAGNETISM   =   WM_USER   +   10;   
8 c. u% p3 e! Y/ a$ s  const   
2 @2 V; Z; h0 C8 A4 a      MT_CLOSEU   =   1;   
1 M) Y9 f5 N- I7 ?      MT_CLOSED   =   2;   6 ^: ^- U8 F% ?- d
      MT_MOVE     =   5;   
6 T$ |" k3 v' Q% a" C% m8 t8 ]+ h      MT_CREATE   =   6;   
2 l) |) V8 F! G- C      MT_PRIOR     =   7;   : U, C2 \" m0 g! b4 h2 }
      MT_NEXT     =   8;   3 I0 S- ~. t5 h2 C
  .......   ' w" D: m) [4 F! t( y  ^% Y1 ^
    Y:integer;   
! t2 c/ {0 `' \% Z3 ^  procedure   TReportMain.FormCreate(Sender:   TObject);   9 \, W9 x) N- [7 E' F& k) _
  begin   + u) A9 X6 q0 _3 H
  y:=paintbox1.Height;   ' P1 @6 v) N; c( m$ s
  end;   8 W9 E, k3 S6 x2 C! y0 U5 b
  procedure   TReportMain.Timer1Timer(Sender:   TObject);   + J) A7 `( V. _( K: h
  begin   
3 W& D- W( K9 _* d) t+ q6 o  PaintBox1.Canvas.Font.Color   :=   clBlue;   4 E* t$ ~9 v+ t5 y
      PaintBox1.Canvas.TextOut(15,y,'dfdf);   
# h4 C3 o# O7 {0 E. F) z3 j      PaintBox1.Canvas.TextOut(25,y+16,'fdf');   
) A  T/ S: I) o9 H2 L5 |( L      PaintBox1.Canvas.Font.Color   :=   clgreen;   8 ~9 u- P. F  Q8 w! G
      PaintBox1.Canvas.TextOut(35,y+PaintBox1.Canvas.Font.Size+8+22,'ffd');   " C5 J) S9 P% U( t4 j! S! h
      PaintBox1.Canvas.Font.Color   :=   clred;   ; l4 u5 B1 N  U
      PaintBox1.Canvas.TextOut(5,y+PaintBox1.Canvas.Font.Size+8+40,'gfg');   
4 t7 Q  o0 h+ T% M% A% x8 J5 _5 U7 i      PaintBox1.Canvas.TextOut(25,y+PaintBox1.Canvas.Font.Size+8+58,'gfg');   # @+ `" [; X, o1 k+ r
      dec(y);   5 d8 F& F1 D/ M# l
      if   y<-(PaintBox1.Canvas.Font.Size+8)*2   then   y:=paintbox1.Height+16;   : |4 v/ Q- x, K
  end;   
- X- n% F' B# Y- |7 ~  procedure   TReportMain.PaintBox1Paint(Sender:   TObject);   
  }  _1 d9 ~+ k5 e  begin   
. ]/ S' E0 V; V    PaintBox1.Canvas.Font.Name:='隶书';   $ r7 g9 U5 a) J# U# ?# g
    PaintBox1.Canvas.Font.Size:=12;   ' J) q# G# }/ k4 a9 d
    PaintBox1.Canvas.Brush.Color   :=clActiveBorder;   , b& v" _5 `, C! y1 V4 C/ n7 z+ v$ o
    PaintBox1.Canvas.FillRect(Rect(0,0,PaintBox1.Width,         PaintBox1.Height))   3 G+ A% u- ]& `3 Q7 j) V& ~
  end;

评分

参与人数 1三维币 +5 收起 理由
bdblbyq + 5 应助

查看全部评分

发表于 2008-1-26 11:35:37 | 显示全部楼层 来自: 中国广东广州
用查表法也可以呀,那是单片机可以完成的!

评分

参与人数 1三维币 +5 收起 理由
bdblbyq + 5 应助

查看全部评分

发表于 2008-1-26 12:28:17 | 显示全部楼层 来自: 中国四川成都
支持LS,查表的东西 方便
发表于 2008-7-13 21:34:22 | 显示全部楼层 来自: 中国江苏常州
要看你的液晶是点阵式的还是自带字库的,如果是点阵式的话,只要把对应的汉字的显示码以数组形式存放,滚屏时只要将待显示的数据移位就行了。如果是带字库的要稍微麻烦些。也有的液晶本身就带有滚屏功能,可以通过写入命令控制字来完成,具体参见液晶的使用说明书。
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

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