QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 1800|回复: 4
收起左侧

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

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

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

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

x
最近在写LED显示屏的程序,需要用到汉字滚动显示,显示原理不太清楚,不知哪位大虾能够指教?最好是有C程序例程!谢谢
发表于 2008-1-26 01:33:01 | 显示全部楼层 来自: 中国广西防城港
const   
3 d& `! Q# v) N1 j7 C      WM_MAGNETISM   =   WM_USER   +   10;   
8 \8 L( I) D& s1 {; \4 g  m& T  const   - k! d* k! D& Y4 O
      MT_CLOSEU   =   1;   
; i5 ~2 z2 _& X  j; d3 K1 B      MT_CLOSED   =   2;   
. H; p# P) c+ l/ _  ~      MT_MOVE     =   5;   
8 Y. }# X& k+ k3 i( s$ `: k4 x      MT_CREATE   =   6;   
. f3 v0 r% p: U2 |5 V- Q$ R      MT_PRIOR     =   7;   
  d- a) Y& d9 c8 d: h' x" v      MT_NEXT     =   8;   ) n/ K* h6 J. I4 ~
  .......   
' \6 m1 M* y: z6 w) I. X    Y:integer;   
& B& _2 @% w' H  _) O* w/ N  procedure   TReportMain.FormCreate(Sender:   TObject);   
3 A1 X1 p: V8 n4 n3 f  begin   , }. ^; H+ k4 q6 F7 R3 A4 L
  y:=paintbox1.Height;   
, G2 o: ]  V. X" U" w& ]9 T8 o  end;   ) Z8 l/ B& a3 k
  procedure   TReportMain.Timer1Timer(Sender:   TObject);   . u" `% D, y& |; b  m
  begin   * t: T0 X$ F2 F+ V% B$ t' `8 y: ^
  PaintBox1.Canvas.Font.Color   :=   clBlue;   
1 O6 |. |6 C4 H; ~  l9 D/ G0 p1 d      PaintBox1.Canvas.TextOut(15,y,'dfdf);   
8 E. b' q0 i. v9 ^' o      PaintBox1.Canvas.TextOut(25,y+16,'fdf');   
. }) Q; F, q$ F( w      PaintBox1.Canvas.Font.Color   :=   clgreen;   8 q) n- p/ L2 [, |  l- h9 d
      PaintBox1.Canvas.TextOut(35,y+PaintBox1.Canvas.Font.Size+8+22,'ffd');   
6 T2 h5 K" X2 U5 J. l  E      PaintBox1.Canvas.Font.Color   :=   clred;   3 ?: m7 v- H/ T6 A9 A
      PaintBox1.Canvas.TextOut(5,y+PaintBox1.Canvas.Font.Size+8+40,'gfg');   & m( L# E- v, Z% A$ m/ K
      PaintBox1.Canvas.TextOut(25,y+PaintBox1.Canvas.Font.Size+8+58,'gfg');   
& t. K2 Y% y2 m' O+ e      dec(y);   ! a3 }. b0 N' c. g! D( z# j6 E! `
      if   y<-(PaintBox1.Canvas.Font.Size+8)*2   then   y:=paintbox1.Height+16;   
  m1 a$ b$ I7 w& {9 x2 f) T  end;   " C$ V2 n# ~! L) e
  procedure   TReportMain.PaintBox1Paint(Sender:   TObject);   + n& D* }2 O7 a( S9 E% \$ j
  begin   
" d6 X- Z1 [5 R. E; W: h1 t    PaintBox1.Canvas.Font.Name:='隶书';   9 _1 D. O8 j, C. M6 G" R
    PaintBox1.Canvas.Font.Size:=12;   
+ k3 e3 T9 D8 Y2 c9 v  R    PaintBox1.Canvas.Brush.Color   :=clActiveBorder;   
3 q2 f  K6 W9 ~4 a    PaintBox1.Canvas.FillRect(Rect(0,0,PaintBox1.Width,         PaintBox1.Height))   
& O4 r" }# i; ?- \. u  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 )

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