自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(1)
  • 资源 (6)
  • 收藏
  • 关注

原创 仿百度文库、豆丁在线阅读(FlashPaper,FlexPaper)参考资料

1.FlashPaper实现比较快,但是只能在32位机器上使用(在64位机器上安装失败) 2.FlexPaper虽然比较麻烦,但是支持64位机器,下面我介绍一下实现的步骤: 实现步骤:(免费的)     文档(TXT/Word/Excel/PPT)----> 转换为pdf ----> 转换为SWF   -----> 使用FlexPaper在线浏览 第一步:文档--->转换为pdf。用op

2011-10-28 11:45:02 4679

CuteFTP 6.0 中文破解版

CuteFTP 6.0 中文破解版

2012-04-10

mongodb学习手册.pdf

初学Mongodb的好帮手,简要清晰,希望对大家有帮助

2012-04-10

EasySize - Dialog resizing in no time!

Introduction Have you ever thought of how annoying it actually was to spend a lot of time doing a basic GUI for your simple applications instead of focusing on the actual 'content'? Take for example a resizing dialog or property page. You need to write code for each control that will tell it where to go when the thing is resized, and this can take up a lot of time. Now I know that I'm not the first one to give a solution to this (CResizableDialog), but this article is on my approach. Description Basically, all you need to do is design your dialog the way you want it to look in the resource editor (don't forget to make it resizable), and then define how the controls will behave when the dialog is resized using one single macro for each control. Usage Note that all this works exactly the same way with both CDialog and CPropertyPage 1.#include EasySize.h to your stdafx.h (or put it in your include directory and #include <EasySize.h> , which I recommend) 2.Add DECLARE_EASYSIZE anywhere in your class declaration: Collapse | Copy Code class CEasySizeDemoDlg : public CDialog { DECLARE_EASYSIZE ...3.Create an OnInitDialog handler if it doesn't already exist, and put this in the end of it: "INIT_EASYSIZE;" : Collapse | Copy Code BOOL CEasySizeDemoDlg::OnInitDialog() { CDialog::OnInitDialog(); ... INIT_EASYSIZE; return TRUE; // return TRUE unless you set the focus to a control } 4.Create an OnSize handler and add the UPDATE_EASYSIZE; macro to it: Collapse | Copy Code void CEasySizeDemoDlg::OnSize(UINT nType, int cx, int cy) { CDialog::OnSize(nType, cx, cy); UPDATE_EASYSIZE; } 5.Optional - If you want your dialog to have a minimum size, then create an OnSizing handler and add the EASYSIZE_MINSIZE macro as below: Collapse | Copy Code void CEasySizeDemoDlg::OnSizing(UINT fwSide, LPRECT pRect) { CDialog::OnSizing(fwSide, pRect); EASYSIZE_MINSIZE(280,250,fwSide,pRect); } //(in this example, 280 is the minimum width and 250 the //minimum height we want our dialog to have)6.Now you have to create the "EasySize Map" (or whatever you want to call it) in which you will specify the behavior of each dialog item. It can be placed anywhere inside your class implementation. The map looks like this: Collapse | Copy Code BEGIN_EASYSIZE_MAP(class_name) ... EASYSIZE(control,left,top,right,bottom,options) ... END_EASYSIZE_MAP The map from the demo application looks like this: Collapse | Copy Code ... //}}AFX_MSG_MAP END_MESSAGE_MAP() BEGIN_EASYSIZE_MAP(CEasySizeDemoDlg) EASYSIZE(IDC_TITLE,ES_BORDER,ES_BORDER, ES_BORDER,ES_KEEPSIZE,ES_HCENTER) EASYSIZE(IDC_RADIO1,ES_BORDER,ES_BORDER, ES_KEEPSIZE,ES_KEEPSIZE,0) EASYSIZE(IDC_RADIO2,ES_BORDER,ES_BORDER, ES_KEEPSIZE,ES_KEEPSIZE,0) EASYSIZE(IDC_CONTENT,ES_BORDER,ES_BORDER, ES_BORDER,ES_BORDER,0) EASYSIZE(IDC_STATUSFRAME,ES_BORDER,ES_KEEPSIZE, ES_BORDER,ES_BORDER,0) EASYSIZE(IDC_STATUS,ES_BORDER,ES_KEEPSIZE, ES_BORDER,ES_BORDER,0) EASYSIZE(IDOK,ES_KEEPSIZE,ES_KEEPSIZE, ES_BORDER,ES_BORDER,0) EASYSIZE(IDCANCEL,ES_KEEPSIZE,ES_KEEPSIZE, ES_BORDER,ES_BORDER,0) EASYSIZE(IDC_MYICON1,ES_BORDER,IDC_RADIO2,IDC_CONTENT, IDC_STATUSFRAME,ES_HCENTER|ES_VCENTER) EASYSIZE(IDC_MYICON2,ES_BORDER,ES_BORDER,IDC_TITLE, ES_KEEPSIZE,ES_HCENTER) END_EASYSIZE_MAP /////////////////////////////////////////////////////////////// // CEasySizeDemoDlg message handlers ... Looks confusing? It's not once you get the point (and I know I'm not good at explaining it) Read on. EASYSIZE Macro The EASYSIZE macro is used in the EasySize Map to specify what behavior your controls will have on dialog resize. It looks like this: Collapse | Copy Code EASYSIZE(control,left,top,right,bottom,options)control is the ID of the dialog item you want re-positioned (which will be referred to as the 'current control' further on). left, top, right and bottom can be either the ID of another control in the dialog (not the current control), or one of the special values, ES_BORDER and ES_KEEPSIZE. Basically, if you specify an ID, the distance from the current control and the item designated by the ID will remain the same when the dialog is resized: The current control will 'stick' to the other item. ES_BORDER works the same way as if you had specified a control ID, except that it's the distance between the current control and the dialog border that will be kept constant. Specifying ES_KEEPSIZE in, let's say left, will keep the width of the current control the same, and will make the current control right-aligned to whatever you specified in right. The width (or height, if you specified ES_KEEPSIZE in top or bottom) of the current control will always remain what it is in the dialog resource. (I know this explanation sucks, but look at the demo application if you are confused or post you question in the board below). Obviously ES_KEEPSIZE cannot be specified in both "left and right" or "top and bottom". options can be a combination of ES_HCENTER, ES_VCENTER and 0 (use 0 if you don't want any of the other). ES_HCENTER horizontally centers the control between the two items specified in left and right (both of those can not be ES_KEEPSIZE!). The width of the current control will always remain the same as in the dialog resource. ES_VCENTER works the same way, but for vertical centering (using top and bottom, and where the height will remain constant).

2011-05-16

FTPTestDevCPP

控制台调用ftp封装类实例,很好用,希望对大家有所帮助

2011-03-17

FTP Client Class

很好用的FTP封装类 not based on MFC-sockets not using other MFC-stuffs like CSring(uses STL) supports Firewalls supports resuming can be easily extended

2011-03-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除