XpMenu v3.0 Final |
|
axsoft
版主 發表:681 回覆:1056 積分:969 註冊:2002-03-13 發送簡訊給我 |
XP Menu3 finalHomepage: http://www.shagrouni.com XP Menu is a none-visual component that changes the visual aspects of menus, toolbars and many other controls to nearly the same look and feel of MS Office XP. No code required, you do not have to reconstruct menus or toolbars using controls other than those shipped with Delphi. Installation A. Unzip the files: XPMENU.PAS and XPMENU.DCR Into the same directory. B. From Delphi menu, Select File| New: Package. C. Press Add, and browse to add the unit XPMENU.PAS. D. Press Install. E. The component is now installed in a new 'XP' page. F. Save the package. If you have a previous version installed: Replace the old files (xpmenu.pas and xpmenu.dcr) with the new one, open the package and recompile. If you encounter any problems remove all the compiled units .dcu, .bpl, .dcp (try to locate them also in 'C:\Program Files\Borland\DelphiX\Projects\Bpl' and 'C:\Program Files\Borland\DelphiX\lib'), then install pre-compiled units again. -------------------------------------------------------------------------------- Notes on proprties Active property: To activate/deactivate xpMenu, also, set this property to False then to True when new items added at run time. AutoDetect property: Set this property to True to force xpMenu to include new added items automatically. UseSystemColors property: The global windows color scheme will be used, setting this property to true will override other color related properties. OverrideOwnerDraw property: By default, xpMenu will not affect menu items that has owner draw handler assigned (any code in OnDrawItem event). To override any custom draw set this property to true. Gradient property: IconBackcolor will be used as a gradient color for the entire menu, Color property wil be ignored. FlatMenu property: To turn menu's border to flat (drop-down and pop-up menu). Any way, a flat effect will not appear until a menu item is selected. Form property: The default is the host form, if you want to target a different form other than the one hosting the component; set Form property to that form. XPControls property: Specifies which control types affected by xpMenu. To prevent xpMenu from drawing a certain control; set the control's Tag property value to 999. XPContainers property: Determine whether the Controls hosted by the specifies containers are affected by xpMenu. GrayLevel property: To control image appearance in disabled items. -------------------------------------------------------------------------------- ImageLists: For toolbars only ImageList assigned to Images property is used; xpMenu automatically generate dim and grayed images for non-hot and disabled items. Buttons with tbsDivider style: xpMenu cannot draw toolbar buttons with tbsDivider style, Windows override any owner draw for this style (I am using Win 98). To work around this, set the button style to tbsSeparator and set its Tag property to none zero value. Creation order: Make sure that the creation order of TXPMenu comes after any menu or toolbar component. To change the creation order, choose Edit | Creation Order from Delphi menu to open the Creation Order dialog box. -------------------------------------------------------------------------------- Known issues Toolbar doesn't supported in Delphi 4. In Delphi 6, XPMenu doesn't recognize buttons populated by Toolbar.Menu property, you need to reset Active property to true at run time. In menu toolbar an Imagelist must be assigned to the MainMenu. A fix suggested by Liyang liyang@guangdainfo.com to Delphi's comtrls.pas, line 18758 :function TToolBar.CheckMenuDropdown(Button: TToolButton): Boolean; ............. if ParentMenu <> nil then begin FTempMenu.BiDiMode := ParentMenu.BiDiMode; FTempMenu.OwnerDraw := ParentMenu.OwnerDraw; end;Edit box associated with UpDown control doesn't reflect the changing value (Win98). To solve this; change the Ctl3D property to false. Window menu in MDI parent form and system menu are not supported. C Builder 6 update patch 1: Solves building with Delphi sources and 3rd party components http://community.borland.com/article/0,1410,28415,00.html Caution Deactivate XPMenu from within controls affected by xpMenu may cause error, this can happen also when changing any value of XPControls and XPContainers properies. -------------------------------------------------------------------------------- Tips How to create menu toolbar: (Extracted from Delphi Help - TToolButton.MenuItem) To create an "IE4-style" (Office-style) toolbar that corresponds to an existing menu: 1 Drop a ToolBar on the form and add a ToolButton for each top-level menu item you wish to create. 2 Set the MenuItem property of each ToolButton to correspond to the top level menu items. 3 Set the Grouped property of each ToolButton to True. 4 Clear the MainMenu property of the Form (if it is assigned) Images in toolbars and menus: To make an image transparent, be sure to fill the background with a unique color-a color your image is not using. Also, make sure that the color of the bottom leftmost pixel shown onscreen has the same background color; xpMenu will use this pixel to determine the transparent color. Edit box: Set the Ctl3D property to false, this eliminate the time consumed when drawing edit box for the first time. Some words about subclassing: Now you don't have to place TXPMenu component in every form an application uses. Only one TXPMenu instance in an application and all forms are subclassed automatically. This automatically subclassing can be disabled by setting the new property DisableSubclassing to true. It is also possible to place another TXPMenu component in a form, so that this form has a different appearance than all other forms. The first created XPMenu will be the MainXPMenu, which is possible to subclass. To check if a given TXPMenu is the MainXPMenu use the new read-only property IsMainXPMenu. To set a specific TXPMenu as the MainXPMenu call its new method MakeMainXPMenu . Is strongly recommended to place xpMenu control on the Main form of your application. Forms with frames may not affected by MainxpMenu, you can use one of the two workarounds to this: Use InitComponent method before showing the form as in the following code: procedure TForm3.Button1Click(Sender: TObject); begin Form1.XPMenu1.InitComponent(Form2); Form2.Show; end;Or place another xpMenu control on the form containing the frame. Accessibility features xpMenu component has been developed without baying any attention to Windows aaccessibility features, more over, the visual aspect of the component interferes badly with the high contrast displaying option. Any way, because xpMenu changes the visual appearance of the existing controls and does not create its own; some application using this component; provide an option to enable/disable the component functionality. History Apr 8, 2003, V3.0 Bug fixed. Enhancement for flat border menu, multicolumn menu by Jiri Tulach Jan 19, 2003, V3 beta The main changes in this version have been introduced by Uwe Runkel. He achieved what many xpMenu users asking for: One instance of the component to affect all the forms of the application. Hovering over main menuitem. Adding support for Listbox control. Oct 5, 2002, 2.22 Support for TDBNavigator and (partly) TDBLookupComboBox. More bug fixes. May 18, 2002, 2.21 More bug fixes. Apr 29, 2002, V2.2 Bug fixes. Fixing Leftjustify allignmen in CheckBox and RadioButton. Jan 10, 2002, V2.1 Adding support for SpeedButton, PageScroller, Panel and GroupBox. Enhancing controls appearanceEnhancing EditBox appearance. Support for HotImages and DisabledImages for Toolbar, kindly added by Sylvain Ntumba. Many Bug fixes. Dec 14, 2001, V2.0 Supporting new controls, thanks to Heath Provost who made the basic code to subclass and paint combobox. The controls supported so far are: ComboBox, CustomEdit, CheckBox, RadioButton, Button, BitBtn and of course, Toolbar and Menu. Disabled text in tool bar buttons is drawn correctly now. xpMenu can detect menus and toolbars inside Frame. DimLevel and GrayLevel properties added to control the appearance of the bitmaps. (suggested by Warner and Enzo) Drawing bitmaps assigned to menu items is improved. - Fixing some problem caused by FlatMenu property. Active property behavior is changed, to enforce the component to draw new added controls; it must be set to false first. Adding 8 pixels to top menu items for WinNT based systems. (Suggested by Niki Bugarcici and Brian Slack ) Fixing some drawing aspects. Nov 2, 2001, V1.506 Changing the default color of menu bar. Changing Form property type to TScrollingWinControl. (Suggested by Michael Martin .) Oct 7, 2001, V1.505 Supporting ControlBar. Added by Michiel van Oudheusden. Sept 5, 2001, V1.504 Removing some problematic code lines in the procedure: ToolBarDrawButton. This code causes unwanted effect on desktop when activating the component at run time with form contains a ToolBarButton with MenuItem. Sept 4, 2001 - V1.503 Bug fixed. Sept 3, 2001 - V1.502 Bugs fixed. Sept 1, 2001 - V1.501 Passing beta stage. Some minor changes and bugs fixed. July 29, 2001, V1.501 (Beta) Adding AutoDetect property. Compatibility issues with Delphi4. July 25, 2001, V1.5 Support for TToolbar. Getting closer to XP style appearance. New options. June 23, 2001 Compatibility issues with Delphi4. Changing the way of menus itration. Making the blue select rectangle little thinner. June 21, 2001 Bug fixes. Items correctly sized even if no image list assigned. Shaded colors for top menu items if fixed for some menu bar colors. June 19, 2001 Release the first version. 網路志工聯盟----Visita網站http://www.vista.org.tw ---[ 發問前請先找找舊文章 ]--- 發表人 - axsoft 於 2003/04/09 15:22:11 |
ralph
初階會員 發表:41 回覆:82 積分:29 註冊:2003-02-04 發送簡訊給我 |
|
axsoft
版主 發表:681 回覆:1056 積分:969 註冊:2002-03-13 發送簡訊給我 |
引言: Is it a free VCL? Is it AD?XpMenu is freeware VCL 網路志工聯盟----Visita網站http://www.vista.org.tw ---[ 發問前請先找找舊文章 ]--- |
nachi
初階會員 發表:40 回覆:116 積分:31 註冊:2003-02-26 發送簡訊給我 |
|
axsoft
版主 發表:681 回覆:1056 積分:969 註冊:2002-03-13 發送簡訊給我 |
引言: 安裝時出現錯誤,在40:32的地方~ error message :[Fatal Error] XPMenu.pas(40): Internal error: URW3537 有人有這個問題嗎? 我不知道該如何解決@@請說明您的安裝方式及C Builder版本!..這樣比較好幫您! 網路志工聯盟----Visita網站http://www.vista.org.tw ---[ 發問前請先找找舊文章 ]--- |
nachi
初階會員 發表:40 回覆:116 積分:31 註冊:2003-02-26 發送簡訊給我 |
我是用delphi的~ 我是按它說明的文件去操作安裝~
A. Unzip the files: XPMENU.PAS and XPMENU.DCR Into the same directory.
B. From Delphi menu, Select File| New: Package.
C. Press Add, and browse to add the unit XPMENU.PAS.
D. Press Install.
E. The component is now installed in a new 'XP' page.
F. Save the package. 之前的版本我也是都裝不起來@@
|
axsoft
版主 發表:681 回覆:1056 積分:969 註冊:2002-03-13 發送簡訊給我 |
引言: 我是用delphi的~ 我是按它說明的文件去操作安裝~ A. Unzip the files: XPMENU.PAS and XPMENU.DCR Into the same directory. B. From Delphi menu, Select File| New: Package. C. Press Add, and browse to add the unit XPMENU.PAS. D. Press Install. E. The component is now installed in a new 'XP' page. F. Save the package. 之前的版本我也是都裝不起來@@如果這樣的話...是否試著把Dlephi重裝試試呢? 或者拿到另一台電腦試試呢! > < src="http://delphi.ktop.com.tw/loadfile.php?TOPICID=9258866&CC=207074"> Delphi.Ktop風紀小隊---[ 發問前請先找找舊文章 ]--- |
ddy
站務副站長 發表:262 回覆:2105 積分:1169 註冊:2002-07-13 發送簡訊給我 |
|
nachi
初階會員 發表:40 回覆:116 積分:31 註冊:2003-02-26 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |