翻页效果资料

话题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做的 

AddThis Social Bookmark Button

相关文档(Relevant Entries)
使MDI窗口有一个背景图象或使它平铺
Delphi参考手册
delphi函数参考手册
Billenium Effects
关于文件操作集锦
DELPHI基础开发技巧
Delphi中拷贝文件
GetFileSize
WoW Powerleveling
Posted on September 5, 2006 9:35 AM | | | Comments (0) | | TrackBacks (0)

引用地址(TRACKBACKS)
 
TrackBack URL for this entry:
http://www.wujianrong.com/mt-tb.cgi/3877

发布评论(ADD YOUR COMMENTS)
 
感谢您参与评论;发表您的意见时请保持文章的相关性;不相关的或是单纯宣传的内容可能会被删掉。您的E-mail只是用来确认您发表的文章,不会出现在网页上。
Please keep your comments relevant to this blog entry. Email addresses are never displayed, but they are required to confirm your comments.

称呼(Name):      记住我的个人信息(Remember)
邮箱(Email):
网址(URL):
评论(Add your comments):

相关内容
广告计划