What's new in delphi 6...(有点长)(0分)

  • 主题发起人 主题发起人 cAkk
  • 开始时间 开始时间
C

cAkk

Unregistered / Unconfirmed
GUEST, unregistred user!
<b>What's new in delphi 6(RTL)</b>
Some functions have been moved from other units into System, while many
System functions have moved to the new Variants unit.
ConvUtils.pas
A collection of conversion functions and constants has been added.
DateUtils.pas
A collection of date and time functions has been added.
Math.pas
Const has been added to the extended parameters to speed things up.
There are also new constants and functions.
StrUtils.pas
This new unit will contain future string functions instead of adding
them to SysUtils.pas.
SysUtils.pas
Added BoolToStr and StrToBool
Added FloatToCurr, MinCurrency and MaxCurrency
Added FloatToDateTime, MinDateTime, and MaxDateTime
Variants.pas and VarUtils.pas
All of the variant/safe array code has been moved from System and now
occupies two new units: Variants.pas and VarUtils.pas.
The operating system dependent code has been isolated into VarUtils.pas
and it also contains generic versions of everything needed by Variants.pas.
You have to be careful using the generic code because it is not exactly
like the Windows code and if you mix Windows calls and generic code you will
run into problems. Use Variants.pas on Windows, use VarUtils.pas on other
platforms.
If you want to use variants, you will have to include the Variants unit to
your uses clause.
VarIsEmpty nowdo
es a simple test against varEmpty, to see if a variant is
clear (nothing of use defined in it) and you will now need to use the VarIsClear
function.
Custom variant data handler
You can now define custom data types for variants.This introduces operator
overloading while the type is assigned to the variant. To create a new
variant type, descend from the class, TCustomVariantType, and instantiate
your new variant type.
For an example, see Complex Numbers found in Variants.pas. This unit implements
complex mathematic support via custom variants. It supports the following variant
operations: addition, subtraction, multiplication, division (not integer division)
and negation. It also handles conversion to and from: SmallInt, Integer, Single,
Double, Currency, Date, Boolean, Byte, OleStr and String. Any of the
float/ordinal conversion will lose any imaginary portion of the complex value.
XMLDOM unit
The XMLDOM.pas unit contains a vendor-independent set of interfaces that
represent the W3C Level 2 XMLdo
M specification. With this unit you can
use thedo
M to manipulate XMLdo
cuments in a platform-independent manner.
Included with this field test is a unit which exposes the Microsoftdo
M
via the MSXMLDOM.pas unit. This unit must also be included in the uses clause
of your project. The TXMLDocument component described in the New VCL section
uses the XMLDOM unit, and is the recommended way of working with thedo
M.

<b>What's new in delphi 6(VCL)</b>
TValueListEditor
The TValueListEditor is a custom grid used for editing TStrings that contain
key/value pairs. Operation is similar to the object inspector. It can be
associated at design time with a component such as TDatabase that contains a
published TStrings property (params) by setting the Component and ComponentProperty
properties.
TXMLDocument
TXMLDocument is a component used for programming XMLdo
cuments. It takes care of
getting an instance of a IDOMDocument interface and loading and saving xml files.
After setting the filename property and setting Active to true, use thedo
MDocument
property to access the contents of the file.
TIPAddress Component
TIPAddress is a new Windows Common Control wrapper for IPAddress class. This control
is used for editing IP Addresses.
TLabeledEdit Component
TLabeledEdit is an addition to the ExtCtrls.pas unit and demonstrates using
sub-components. It is an Edit control that has a label attached to it. The Label
appears as a property of the control.
TPageSetupDialog Component
TPageSetupDialog is an addition to the existing supported common dialogs and is
the preferred dialog for printer setup under Windows 2000, although this dialog
works on WinNT/98 as well. This component provides the ability to paint the page
representation on the dialog itself.
Sub-component demo
Components can now own other components which creates sub-components. For example,
a component can have a property which is a component reference which can be either
internal (a sub-component) or external (a normal component reference). If the reference
is internal then
the sub-component is not owned by the form but by the component on the
form. This means that components can now publish the properties of the sub-component
and they will be streamed correctly. Additionally, the object inspector has been modified
to allow you to view the properties of component references inline (i.e. the Font
property). To create a component that has a sub-component requires a call to
TComponent.SetSubComponent.
Publishable interface properties
Interface properties (properties whose type is an interface) can now be published
if and only if the implementor of the property is a streamable component. This means
you can now see properties that take an interface in the Object Inspector, which will
provide a drop-down list of components that support the interface.
New actions
The following actions have been added to VCL:
File Actions
TFileOpen
TFileSaveAs
TFilePrintSetup
TFileExit
TShellExecute - ShellExecutes a command
Search Actions
TSearchFind
TSearchReplace
TSearchFindNext
Rich Edit actions
TRichEditBold
TRichEditItalic
TRichEditUnderline
Tab actions
TPreviousTab
TNextTab
TLastTab
Dialog actions
TColorSelect
TFontEdit
TOpenPicture
TSavePicture
TPageSetup
Misc. actions
TBrowseURL
Improved features include:
TCustomAction桸ow has a GroupIndex property which allows Actions to work together
as a group the same way GroupIndex works for speedbuttons. Set GroupIndex to
determine how the action behaves when clicked. When GroupIndex is 0, the button
behaves independently of all other actions in the ActionList containing the action.
When the user clicks such an action it's Checked property is not changed. When
GroupIndex is greater than 0, setting the action's checked property to true causes
all other actions with the same GroupIndex to be unchecked.
TImage桝 Proportional property has been added which maintains the aspect ratio of
the image regardless of the size of the TImage control.
Controls (TEdit, TMemo, TListBox, TListView, TTreeView, TMaskEdit, TDBEdit TDBMemo,
TDBListBox)桵ost of the VCL controls now publish the following Bevel properties:
BevelEdges
BevelInner
BevelOuter
BevelKind
BevelWidth
MS-Office style menus
A system of menus that mimics Microsoft Office 2000 style menus has been implemented.
The menus are easy to create, customize and maintain.
Shell Controls
There are three new components that replace DirectoryListBox, FileListBox, and
DriveComboBox, respectively. They are:
ShellTreeView桾his displays a hierarchical view of the file system.
ShellListView桾his provides details on single objects in the file system.
ShellComboBox桾his dropsdo
wn a list of locations. (not possible to type into it yet)
Note: Shell controlsdo
not work on Windows 95.
Unit additions
Classes.pas
An assign procedure has been added to TList that not only copies but also allows for
primitive set operations.
AddObject override has been added to TStringList that correctly implements dupIgnore.
Controls.pas
ClientToParent and ParentToClient have been added so you can map your pixels to
one of the parents or children. They work very similarly to ClientToScreen and
ScreenToClient.
ComCtrls.pas
TTreeView桟reateTreeNodes has been added.
Generalized the creation of nodes and made an event so that simple tree users
won't have to create a descendent just to override the node class. Also AddNode
has been changed so you can now pass in the node (of whatever class) you want added.
Added CreateWndRestores which allows you to say that CreateWnddo
esn't need to
restore things.
Added MultiSelect with four properties and eight methods.
TListView桟reateListItems has been added, which matches TTreeView's CreateTreeNodes.
TStatusBar桾he size grip now appears even if the status panel is not directly
parented by its form. As long as the lower right corner of the status bar is
in the lower right corner of the form then
the size grip will appear.
Contnrs.pas
Last and First have been added to TObjectList, TComponentList and TClassList.
These are typecast functions.
TNamedObjectList, TNamedComponentList and TNamedClassList have been added. These
are binary sorted lists that work similarly to TStringList.
TStack, TQueue, TObjectStack and TObjectQueue's Push is now a function that simply
returns the item pushed on to the stack. Think of it as a Push/Peek. This is very
useful when pushing things that are created when pushed.
Forms.pas
AutoDragDocking support has been added. This allows you to turn off auto-docking
for your application. Additionally a flag has been added to Delphi's options dialog
that allows you to set this property.
Graphics.pas
TFontRecall, TPenRecall and TBrushRecall have been added. These allow quick saving
off and restoring of fonts, pens and brushes. They descend from TRecall
(from Classes) which works with TPersistent classes in general.
The system colors have been have sorted to make things easier to find.
Four colors have been added to the standard sixteen:
clMoneyGreen
clSkyBlue
clCream
clMedGray
Masks.pas
EditMask and Text now use custom types so their property editors are more useful.
Printer.pas
Added procedure MetaPrint(APopulate: TMetaPopulateProc;
const AHeaderCaption: string;
APrintHeader, APrintBorders, APrintToSingle: Boolean;
AProgress: TMetaProgressProc;
AFont: TFont);

This function wraps the printing of data to a meta file. It handles multi-page
printing as well as caption and border printing. Support for progress updating
(via a call back) and custom font are also included.
TypInfo.pas
It is now safe to call GetPropInfo with an object thatdo
es not have any RTTI
information. It simply returns a nil.
FreeAndNilProperties has been added. This will take any RTTI enabled object
and free and nil out each of its object properties. Note that it will also
clear any objects this object may have property references to, so nil those
out first.
Database
Modifications have been made to accommodate the new object treeview.
More try..finally(s) have been added.
VCL-DB桸ew Native DB/Midas framework
The connection between the client dataset and the unidirectional dataset is
provided by a dataset provider. Multi-tier Distributed Application Services
Suite (MIDAS). MIDAS defines the mechanism by which provider components package
database information into transportable data packets (which can be used by client
datasets) and apply updates received in delta packets (which client datasets
create) back to a database server.
DBExpress is a set of lightweight database drivers that provide fast access to
SQL database servers. For each supported database, DBExpress provides a driver
that adapts the server-specific software to a set of uniform DBExpress interfaces.
When you deploy your application, you need only include a single DLL (the
server-specific driver) with the application files you build.
Driver File name
InterBase driver DBEXPINT.DLL
DB2 Driver DBEXPDB2.DLL
MySQL driver DBEXPMYS.DLL
Each DBExpress connection is encapsulated by a component. TSQLConnection provides
all the information necessary to establish a database connection using DBExpress,
and is designed to work with unidirectional dataset components. A single SQL connection
component can be shared by multiple unidirectional datasets, or the datasets can
each use their own connection.
Unidirectional datasets provide the mechanism by which an application reads data
from an SQL database table. Unidirectional datasets send an SQL command to the
database server, and if the command returns a set of records, obtain a unidirectional
cursor for accessing those records. Theydo
not buffer data in memory, which makes
them faster and less resource-intensive than other types of dataset. However,
because there are no buffered records, unidirectional datasets are also less
flexible than other datasets. Many of the capabilities introduced by TDataSet are
either unimplemented in unidirectional datasets, or cause them to raise exceptions.
Despite the limitations, unidirectional datasets are a powerful way to access data.
They are fast, and very simple to use and deploy.
The main components of DBExpress include:
A modified version of TDataset
TSQLConnection, a wrapper around a DBExpress driver
TSQLDataset, a unidirectional dataset
TSQLQuery, TSQLStoredProc, and TSQLTable, which are compatible with existing
elements if you want to port an application

<b>What's new in delphi 6 (internet)</b>
Apache Web Server application
WebBroker now supports Apache in addition to ISAPI, WinCGI, and CGI.
The COM WebBroker application provides a convenient environment for developing
WebBroker applications.
Test Server
TestSvr enables you to monitor HTTP requests and responses and develop WebBroker
applications without installing a commercial web server.
<b>what's new in delphi 6(IDE)</b>
New menu
The New menu has changed. Currently it shows five types (Application, Form, Frame,
Data Module and Unit) along with 'other' which brings up the repository.
Packages in Project Manager
Now all open package projects will show up in the Project Manager view. These package
project reference nodes can be used to assist tracking the active project as well as
navigating to any open package, even when the Package is not a member of the current
project group.
Object Tree View
The tree view displays the object inspector's focus' owner component and its children.
For example, a button's owner is its form. The tree view is in lock step with the
object inspector so, as it changes focus the tree view reflects the changes. All the
capability of the data module designer is exposed. This includes, but is not limited
to, drag-n-drop support as well as the popup editor menus. The tree view isdo
ckable
to the object inspector. Right-clicking will display the same options that appeared
in the Data Module Designer.
Before, when an object was not complete it was displayed with a red circle around it.
Now it will show a red checkmark.
Ghost icons represent components implicitly created for you behind the scenes. For
example, Default Session.
Visual code editor with loadable views
The code editor now supports package-loaded custom views. These views are accessible
via tabs located in the status bar. The only built-in view is the standard Code view.
All the rest of the views will come from a package.
The first new view is the components view and is only visible if the current module
has an associated DFM file. This view consists of a list view that displays the
components associated with the module's DFM. If the module's DFM is a data module
derivative this view replaces the data module view. The old view will not be visible;
any keys like F12 will simply activate this view instead. If the module's DFM is a
form/window derivative, this view is simply another way to look at the DFM's components.
Non-visual components are visible via this new view.
The components view supports modes similar to the repository. You can list the
components by icon, simple list, or detailed list. In detail list mode the columns
can represent any RTTI property or some simple types (i.e. ClassName, etc.).
Columnar sorting is also supported. The selection is synchronized with the object inspector
and tree view. All standard menu items appear in the popup menu along with additional
items to allow you to choose which display mode to use and to access the property/column
selector.
Finally, the components view also allows you to perform limited filtering. You can
limit the items displayed to only non-visual components or display all components.
Changes and additions to the Object Inspector
The instance list at the top now shows the type of the selected object. And when the
instance list is redundant, it can be hidden by right clicking and selecting an instance.
The properties that reference an object are now a different color and may be
expanded without changing the selection.
The Object Inspector now supports expanding of component references inline. This
provides access to the properties of the referenced component without having to
select the component on the form. This has been added to support sub-components
and to increase usability.
The instance list at the top of the object inspector is now optional (see the
OI's popup menu).
Component references can now be expanded inline, similar to how TFont works.
Additionally they show up on the events page and then
show the events of the
referred component.
The instance list now displays the class types in the dropdown.
The Instance list box has a hint that shows the contents in case the box is
too small to show everything.
The dropdo
wn lists (instance and property value) collapse when the arrow is
clicked on a second time.
The tabs have been moved around so that the left most edge is shown all the time.
Code Insight
Code completion now works in the interface section of a unit
Displays inherited virtual methods, interface methods and properties
Supports multi-select and adds all selected items
Also supports filtering and automatically removes the text used to filter the list
Supports WM_xxx, CM_xxx and CN_xxx message methods based on like named constants
from all units in the uses clause
Code Completion
The popup window is now sizable
The list now filters based on what has been typed in the editor
Colors have been added to help distinguish different items
Abstract methods appear in red and have the word "abstract" appear after the
declaration
Item declarations appear more like Pascal than previously
If the typed text matches an item exactly then
that item is selected
If the item is a procedure/function with parameters a "(" is included and a
code parameter hint is displayed immediately
Directories Dialog
The directories dialog for editing items such as Library Path now displays invalid
paths in gray.
There is now a button to remove all invalid paths.
<b>What's new in delphi 6(compiler)</b>
$IFDEF enhancement
New $IF directive with constant expression evaluation. For example:
{$IF Defined(WIN32) and (SomeConst > 12.0) }
...
{$ENDIF}
Pascal constant identifiers can be evaluated in $IF directives. Existence of a
conditional define symbol ($IFDEF) can be tested with the Defined() intrinsic
function, and existence of a Pascal constant identifier symbol can be tested
with the Declared() intrinsic function.
For example:
{$IF Defined(WIN32) and Declared(MyConst)}
...
{$ENDIF}
New Built-in Assembler
The product now has a completely new built-in assembler with:
New directives, VMTOFFSET and DMTOFFSET
New instruction support: MMX, SIMD, Pentium Pro
New support for DQ (define quadword data) and DT (define ten byte data)
pseudo-opcodes.

粗看上去好像没什么新的东西?
 
真的有点长,先存起来,再看。
 
又要换D6了,那一大堆控件又要重新下载,惨啊。
 
所以我只收集有源码的控件
 
有源码也不顶用吧?有的肯定要改写
 
不是长,是太长了。Borland的网站连接实在太慢了,有人知道
它有mirror吗?
 
我觉得borland应该加入directx控件 for bcb and delphi!
 
大家觉得最大的改进在什么地方?
 
呜呜,我惨,delphi5都不会又要要要学D6了,好难难难,让我喘口气行不行!!!
 
什么 时候也让控件和DELPHIX的关系好点啊
 
好象数据库的改进比较大,彻底放弃了BDE,改用了DBExpress
 
有D版的了吗?
 
我也想要 :P
 
我永远跟不上她的步伐 8-(
 
接受答案了.
 
后退
顶部