QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
3天前
查看: 1806|回复: 4
收起左侧

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

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

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

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

x
最近在写LED显示屏的程序,需要用到汉字滚动显示,显示原理不太清楚,不知哪位大虾能够指教?最好是有C程序例程!谢谢
发表于 2008-1-26 01:33:01 | 显示全部楼层 来自: 中国广西防城港
const   
. ?% m  j' l/ t$ d% \$ W# b      WM_MAGNETISM   =   WM_USER   +   10;   
/ `; n/ l7 W: {, ^' ~! E$ F4 @6 p  const   
) y- @- @7 H" J# N# K      MT_CLOSEU   =   1;   6 _+ {1 N6 R  a8 b: p- ^* W6 s
      MT_CLOSED   =   2;   - w+ N4 n" v! Z$ k+ ^, S' @# j/ `
      MT_MOVE     =   5;   
/ E# ^' O& [& r      MT_CREATE   =   6;   
8 P2 ]& P% `5 W9 G, l* ~, l      MT_PRIOR     =   7;   
+ J1 K0 ?+ k- U: a2 S; h      MT_NEXT     =   8;   6 k# `9 J: N* C! p+ h6 \+ e7 X
  .......   # O& f! h" s( V
    Y:integer;   
9 t; ?0 R' u+ o9 C6 x* K  procedure   TReportMain.FormCreate(Sender:   TObject);   - e/ j. L2 Y- c: ]( a
  begin   
& j, V/ \. b: \, L, t  y:=paintbox1.Height;   4 k( ^9 A: i! _5 J. U
  end;   ( p$ L+ p9 V$ a3 I3 ]# ~* ], @
  procedure   TReportMain.Timer1Timer(Sender:   TObject);   
. l: O3 g1 P# K; R  begin   & a5 Q5 h9 s2 F& E1 b8 j
  PaintBox1.Canvas.Font.Color   :=   clBlue;   " t8 A1 O) V+ Y9 J/ @9 O
      PaintBox1.Canvas.TextOut(15,y,'dfdf);   ! p  ]4 d, k2 |2 y" q# [6 p! l2 _. p
      PaintBox1.Canvas.TextOut(25,y+16,'fdf');   ( u* t( N, _3 I: o
      PaintBox1.Canvas.Font.Color   :=   clgreen;   0 q2 e! c1 [" n& w# W2 R
      PaintBox1.Canvas.TextOut(35,y+PaintBox1.Canvas.Font.Size+8+22,'ffd');   
0 X6 g+ \/ H8 k2 S1 T      PaintBox1.Canvas.Font.Color   :=   clred;   
! O7 s' K8 Z5 }# X' O% M      PaintBox1.Canvas.TextOut(5,y+PaintBox1.Canvas.Font.Size+8+40,'gfg');   * a$ A  c, o+ U5 `9 i5 s
      PaintBox1.Canvas.TextOut(25,y+PaintBox1.Canvas.Font.Size+8+58,'gfg');   3 U7 C8 {; y1 }5 o5 v
      dec(y);   
3 q& V" C' [: T! s4 A4 i# ^' X2 l7 v      if   y<-(PaintBox1.Canvas.Font.Size+8)*2   then   y:=paintbox1.Height+16;   3 c' r( m1 w+ |% v
  end;   
+ |. h, e" f1 G5 S/ ^1 F  procedure   TReportMain.PaintBox1Paint(Sender:   TObject);   
+ T' Q& q4 K! Q! I0 u( E  begin   
+ |, E1 L" ^$ f0 w: V    PaintBox1.Canvas.Font.Name:='隶书';   
) H0 v  k% B. w! F    PaintBox1.Canvas.Font.Size:=12;   
( F8 Z- a$ e4 {9 a    PaintBox1.Canvas.Brush.Color   :=clActiveBorder;     c* i$ k" b& \9 l( L
    PaintBox1.Canvas.FillRect(Rect(0,0,PaintBox1.Width,         PaintBox1.Height))   & X3 }$ m) t# c9 n
  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 )

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