翻页效果资料

| No Comments | No TrackBacks

话题324302的标题是: 请教两个图形特效的算法 (200分)
分类:图形图象 cheka (2000-09-01 19:52:00) 
1. 如何在屏幕上写尺寸很大的字符时AntiAlias ?
   DirectX能做到么?
2. 如何实现翻页的效果, MSDN里提供的DXMedia的SDK里有Sample,
   但必须使用需要注册的Com组件


 
Another_eYes (2000-09-01 21:32:00) 
1. 不需要directx, 很简单的算法就成. 过去我回答过, 懒得再写一遍代码了. 去已答问题查
2. 跟一下
 
cheka (2000-09-01 23:10:00) 
1.多谢eYes ,找到了,感兴趣的朋友可以检索“字体 显示”,
  结果中Another_eYes回答的一个问题(不好意思没记下URL)
2.waiting
 
Another_eYes (2000-09-20 0:17:00) 
踢一 脚
 
Another_eYes (2000-09-25 0:05:00) 
再踢
 
loopy (2000-09-25 1:32:00) 
我再踢!!
 
Ares (2000-09-25 15:20:00) 
凑个热闹
 
xixi12359 (2000-09-27 15:52:00) 
哈哈
 
z_cd (2000-09-27 15:56:00) 
踢最后一脚
 
Another_eYes (2000-09-27 21:47:00) 
如果需要象"硬纸板"那样翻页效果我会. 如果要达到象"纸张"那样的翻页效果我不会 :->
 
cheka (2000-09-27 23:58:00) 
谢谢Another-eYes , 都可以的,请出手吧。
 
liuly (2000-09-28 0:12:00) 
有个控件:picshow,有100多种图像特效,其中就有翻页,
带源码,可以参考一下。
 
cheka (2000-09-28 10:12:00) 
请问哪儿有PicShow?
 
liuly (2000-09-28 13:17:00) 
我忘了在哪儿当的,已发到cheka@yeah.net,请查收!
 
cheka (2000-09-29 11:30:00) 
多人接受答案了。
 

Another_eYes-100,liuly-100,的回答最终被接受。

-------------------------------------------------------------------------------------------\

话题1162952的标题是: 如何制作翻页的效果???? (100分)
分类:图形图象 laohe (2002-06-14 12:20:00) 
我看过电子名片后,我觉得他的翻页效果不错,不知道怎么制作
下面是下载地址,给源码的加100分,谢谢;

下载地址:
http://www.skycn.com/download.php?id=6569&url=http://ln.skycn.net/down/e-C11.zip
http://bright9.top263.net/e-C11.zip


 
laohe (2002-06-14 12:32:00) 
这个效果难道没有人会吗,大侠出手吧
 
Bahl (2002-06-14 12:36:00) 

读书软件做自己的


   不知各位对E_book的读书效果是否感兴趣,它是用vb做的,其实在c++builder中也可以很轻松的实现类似效果。现在让我们step by step 吧!

  1)新建工程。单元存盘为"read.cpp"

  加入一个popupmenu; 窗体属性设置如下

  Name: MainForm;

  AutoScroll:false;

  BorderStyle:bsNone;

  Font:宋体,Fontsize:9;

  Position:poScreenCenter;

  PopupMenu:PopupMenu1;

   2)添加一panel,设置为:

  BevelOuter:bvNone;

  BorderStyle:bsSingle;

  Ctl3D:false;

  Name:Panel_1;

  Caption(置空);

  color:0x00CE9600; (淡蓝色)可自定

  3)a:把panel_1拉大(任意),在里面添加两个Panel,命名为Le_Pan,Ri_Pan;

  Le_Pan:

  Color:clBlack

  Align:alLeft;

  Width:20;

  其余同Panel_1;

  Ri_Pan:

  Align:alRight;

  其余同Le_Pan;

  b:

  在Panel_1内添加1个Label,设置属性为

  Transparent:true;

  Visible:false;

  选取Label1,敲Ctrl+c一次,再敲Ctrl+V 69次,(选70个Label)

  c:

  在Panel_1内添加两个Image控件,命名Back_Image,Face_Image;

  Back_Image的stretch 属性为true;

  Back_Image可以载入你想要的背景图片;

  4)添加一个Memo控件,属性为

  Name:Buf_Memo;

  Width:310;

  Visible:false;

  Enabled:false;

  Ctl3D:false;

  5)添加OpenDialog,OpenPictureDialog各一个;

  PopMenu1中建立3个按纽。

  1) caption:打开 Name:OpenN

  2) caption:背景 Name:BackN

  3) caption:退出 Name:CloseN;

  OpenDialog1的filter属性为:文本文件|*.txt|所有文件|*.*

  原理:先将文本文件内容装入memo中,再通过遍历label控件的办法把它显示出来。

  以下是单元文件:

  //

  #include

  #pragma hdrstop

  #include "Read.h"

  //

  #pragma package(smart_init)

  #pragma resource "*.dfm"

  TMainForm *MainForm;

  const int Page_Nums = 34; // 每页的行数

  int Now_Line; // 当前行

  bool End; //文章是否结束

  //

  __fastcall TMainForm::TMainForm(TComponent* Owner)

   : TForm(Owner)

  {

   Inin_face();

  }

  //

  void __fastcall TMainForm::Face_ImageMouseDown(TObject *Sender,

  TMouseButton Button, TShiftState Shift, int X, int Y)

  {

  //拖动窗口,这个技巧比较有用

   if(Button == mbLeft)

  { int SC_DragMove = 61458;

  ReleaseCapture();

  MainForm->Perform(WM-SYSCOMMAND,SC-DragMove, 0);

  }

  }

  //

  void __fastcall TMainForm::OpenNClick(TObject *Sender)

  {

  if(OpenDialog1->Execute())

  { Buf_Memo->Lines->LoadFromFile(OpenDialog1->FileName);

  Inin();

  }

  }

  //

  void__fastcall TMainForm::BackNClick(TObject *Sender)

  {

  if(OpenPictureDialog1->Execute())

  Back_Image->Picture->LoadFromFile(OpenPictureDialog1->FileName);

  }

  //

  void __fastcallTMainForm::CloseNClick(TObject *Sender)

  {

  Application->Terminate();

  }

  //

  void TMain Form::Print Page(int line_cou)

  //执行print书本内容

  {

  const int L-TOP = Label1->Height;

  //该参数用来设置行距

  const int TitleLineCount = Buf-Memo->Lines->Count; //memo总行数

  int LabelLeft = 40;

  int LabelTop = 38;

  if(line_cou < 0)

   //line_cou是标记现在的行位置

  line_cou = 0;

  int lineInx=0;

  //当前行数指针

  int i=0;

  bool vis=1;

  int c=Panel_1->ControlCount;

   // 得到Panel_1上的控件数

  TLabel *pLa;

   //定义TLabel类的指针

  while(i   {

  //遍历panel_1上的所有控件,这个方法很有用,

  if(Panel-1->Controls[i]->ClassNameIs("TLabel"))

  //判断控件类名

  { pLa=dynamic_cast< TLabel* >(Panel_1->Controls[i]); //强行转换指针类型

  pLa->Visible= vis;

  if(!vis) {i ++; continue;}

  //设置多余label为不可视

  pLa->Top= LabelTop;

  pLa->Left= LabelLeft;

  pLa->Caption=Buf_Memo->Lines->Strings[lineInx+line_cou];

   //用 label 显示行内容

  LabelTop+=L_TOP;

  }

  else

  //若不是想要的(label)类,继续判断下一个控件

  {i++; continue;}

  i++;

  lineInx++;

  if(LabelLeft < 300)

  if(lineInx+1 == Page_Nums)

  { LabelTop = 38;

  LabelLeft = 410;

  }

  if(lineInx+1 == 2*Page_Nums) //如果已经显示一页

  vis = 0;

  if(lineInx + line_cou == TitleLineCount-1) //如果全文结束

  vis = 0;

  }

  if(lineInx + line_cou < TitleLineCount-1)

  {

  Now_Line = line_cou + lineInx; //记录当前行数

  End = 0;

  }

  else

  End = 1;

  }

  //

  void TMainForm::Inin()

  {

  End = 0;

  PrintPage(0);

  }

  //

  void TMainForm::Inin_face()

  //初始化界面

  {

  Width = 740;

  //这里设置窗体大小

  Height = 495;

  Back_Image->SendToBack();

  Face_Image->BringToFront();

  Panel_1->Align = alClient;

  ack_Image->Align = alClient;

  Face_Image->Align = alClient;

  //这些初始化设置,虽然有违“所见即所得”的本意,但却使得在编辑时更方便

  }

  //

  void __fastcall TMainForm::Ri_PanClick(TObject *Sender)

  {

  //向前翻页

  if(!End)

  PrintPage(Now_Line);

  }

  //

  void __fastcall TMainForm::Le_PanClick(TObject *Sender)

  {

  //向后翻页

   if(End)

  PrintPage(Now_Line - 2*Page_Nums + 1);

  else

  PrintPage(Now_Line - 4*Page_Nums + 2);

  }

  //

  在最顶部加上

  头文件

  #include

  生成的文件就可以导入jpg图片文件作为背景颜色

  另外在头文件的public中,加上:

  public: // User declarations

  void PrintPage(int line_cou);

  // 主执行函数

  void Inin(void);

  // 初始化打开的文件

  void Inin_face(void);

  // 初始化界面

  对于初学者,需要指出的是,除了上面三个函数之外,其它的都在各自的Events(事件)页双击生成,然后写入函数主体。

  注意:由于TMemo类只能支持小于大约30k的文件,所以打开较大的文件也会报错,但用TRichedit类来代替TMemo即可。因为TRichedit类涉及到很多不确定因素(比如如果装vc,把某些dll换成旧版则可能会严重出错),这里还是用TMemo 做个例子。该代码在k6-2-350,win98,c++builder4中编译通过。 

 
laohe (2002-06-14 12:43:00) 
Bahl :
delphi能不能实现那种效果
 
IO321 (2002-06-14 12:59:00) 
那个效果能不能实现跟是不是Delphi没有关系。。要看他是怎样实现的。。
我看了一下那个电子名片的软件..
他的翻页用的是图片的x轴变化实现的。。
即翻页的按钮onclick时先将当前页面内容照成一个图片
然后改变内容 再使图片放到其上面 然后用一个for循环使图片的width随时间变小。
然后消失 再重复类似过程在另一边再来一遍。。。

以上是我看到后的猜测 ,不足之处还望大家指教。。。
就是照成图片的时候怎么照
不会是用全屏照下来在用当前程序位置rect出图片吧??。。。好麻烦!
怎样照像才能只照一个控件??
希望各位给于指教
 
Bahl (2002-06-14 18:03:00) 
delphi能实现那种效果
 
laohe (2002-06-16 9:02:00) 
怎么实现呢
 
isapple (2003-01-05 14:05:00) 
这里是Delphibbs呀!虽然可以说别的,可是也应该以DELPHI为主嘛!VC中能实现的,我想
DELPHI也能实现,有哪位大侠能说说?
 
koolwind (2003-01-05 14:53:00) 
laohe:这个网站是教你怎么样自己做这个书本翻页效果
http://rednet.eschool.com.cn/document/20001207/2000120710210101.shtml
 
laohe (2003-05-30 13:36:00) 
多人接受答案了。
 

Bahl-80,koolwind-20,的回答最终被接受。

-------------------------------------------------------------------------------------------

话题2624171的标题是: fastreport怎么翻页呀? (50分)
分类:报表/统计图形 wangfujun (2004-05-24 10:12:00) 
我弄了半天也没不知道fastreport怎么翻页!
我要的翻页效果是在preview是只显视一页,而不是一般fastreport里的那样,一下子把所有的页都连续的显视出来,点下一页的时候再显视下一页,说白了就是像word里的那样!
人家QR就能实现!
 
wangfujun (2004-05-24 10:33:40) 
怎么这个问题没人会么??
虽然我不会,但我觉得这个好像不难!
 
wwwwb (2004-05-25 8:30:45) 
自定义预览窗口试试。
 
wangfujun (2004-05-25 9:19:00) 
我就是自定义的窗体,可以这代码可以怎么写我就不知道了,帮帮忙了!
 
limaodr (2004-05-25 17:59:12) 
用QReport不就行啦!!!
 
yhwyb (2004-05-25 19:28:52) 
我的可以,只是做了一点小动作,有现成的窗口,如果你还没得到解决办法,我给你
请来email:yh419@163.com
 
yhwyb (2004-05-25 19:34:05) 
我晚上不在网,明天上午可以给你发,但你要给我e-mail,如果好用,请多给点分。

 
快乐的蚂蚁 (2004-05-25 20:52:29) 
也想知道
 
wangfujun (2004-05-26 10:37:10) 
我给你发了email了!
分不是问题,先谢谢你了
 
zyhleaves (2004-05-26 10:28:32) 
我也想要,谢谢我的email:myleave@163.net
 
wangfujun (2004-05-26 14:59:40) 
你的那个不行,不是那个效果,你仔细看看word 里面的预览看看和fastreport有什么不一样
 
jevonscn (2004-05-26 17:06:37) 
我的也是这样
现在预览只能看到第一页,其它的页都看不到
怎么设置能打印所有记录啊?还有怎么设计打印机自动连续走纸(针式打印机),不用一张一张的放纸?请大侠指教,急!!

万分多谢!
是用fastreport做的 

No TrackBacks

TrackBack URL: http://www.wujianrong.com/mt-tb.cgi/1024

Leave a comment

About this Entry

This page contains a single entry by kevinwu published on September 5, 2006 9:35 AM.

首届世界CSS设计大赛结果揭晓 was the previous entry in this blog.

DELPHI制作动画 is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.