QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

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

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

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

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

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

x
最近在写LED显示屏的程序,需要用到汉字滚动显示,显示原理不太清楚,不知哪位大虾能够指教?最好是有C程序例程!谢谢
发表于 2008-1-26 01:33:01 | 显示全部楼层 来自: 中国广西防城港
const   
+ P: j% j& ^2 d( B3 E: E      WM_MAGNETISM   =   WM_USER   +   10;   2 [: [# @* H; z# o
  const   
; s7 r, c* X" v' L& t* k6 A2 i      MT_CLOSEU   =   1;   . s- x3 i# b, E& ?2 s% y  i# \
      MT_CLOSED   =   2;   
8 Y/ W+ `& a. B  g0 V& ]* |* N      MT_MOVE     =   5;   ; w- k0 x/ H* q" h
      MT_CREATE   =   6;     f* c% H& V8 y4 }) a: G
      MT_PRIOR     =   7;   ! [  p1 v* h& a( J) W
      MT_NEXT     =   8;   
+ N9 |, }5 c1 O- k2 ~  .......   
/ p; f/ N& l$ p+ W9 X" }    Y:integer;     |6 S* N9 }. D, Y7 _) h
  procedure   TReportMain.FormCreate(Sender:   TObject);   
1 Y9 o9 Q' }) f0 X1 V/ b  begin   
9 k: Y' d! b1 G* I0 l  y:=paintbox1.Height;   
2 Z9 o) U. n% _% g3 Q' j; F* @  end;   : S- Z% M, b, o# p) J7 A
  procedure   TReportMain.Timer1Timer(Sender:   TObject);   
+ s" f' G$ p: U0 ]/ D, l! k- l0 I  begin   6 e" z, X  ~! ?" ^' K6 z, c
  PaintBox1.Canvas.Font.Color   :=   clBlue;   ) f5 P8 F# a& M$ b+ m! y) g0 ?, _
      PaintBox1.Canvas.TextOut(15,y,'dfdf);   6 m4 Q3 b  u6 [0 ^
      PaintBox1.Canvas.TextOut(25,y+16,'fdf');   
0 g0 E# g1 p! h" A& D% G' M      PaintBox1.Canvas.Font.Color   :=   clgreen;   8 z. k: o1 J/ E5 p# T3 P% B
      PaintBox1.Canvas.TextOut(35,y+PaintBox1.Canvas.Font.Size+8+22,'ffd');   9 u9 }% E* V3 c# v5 S+ w
      PaintBox1.Canvas.Font.Color   :=   clred;   
' C, g( J( L" U3 }$ D. }! G      PaintBox1.Canvas.TextOut(5,y+PaintBox1.Canvas.Font.Size+8+40,'gfg');   
$ y4 W) y% X% ?' v6 E, `      PaintBox1.Canvas.TextOut(25,y+PaintBox1.Canvas.Font.Size+8+58,'gfg');   - X0 Z% H0 u. B8 ^
      dec(y);   9 f/ Y% g6 l6 V& @; n- ?, L
      if   y<-(PaintBox1.Canvas.Font.Size+8)*2   then   y:=paintbox1.Height+16;   
  c* n" ]4 R( t  end;   
& c" I9 c( J* ?/ B: ^6 \  procedure   TReportMain.PaintBox1Paint(Sender:   TObject);   6 b9 a2 c. u# w$ H+ ~9 R$ [
  begin   5 Z! D/ ^4 A# @$ B5 F6 `3 D. B' S
    PaintBox1.Canvas.Font.Name:='隶书';   
9 @- S* y" S3 d/ q    PaintBox1.Canvas.Font.Size:=12;   ; z- D4 N" ~1 n( Q
    PaintBox1.Canvas.Brush.Color   :=clActiveBorder;   
9 D, u% S% C% x# p9 @/ ]: C4 {    PaintBox1.Canvas.FillRect(Rect(0,0,PaintBox1.Width,         PaintBox1.Height))   2 {( F  q9 P4 b: B1 ?% c# W, 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 )

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