Solved

A BUG of Delphi, Nobody can fix

Posted on 2002-04-03
10
218 Views
Last Modified: 2010-08-05
uses CommCtrl;

procedure TMainForm.show1Click(Sender: TObject);
begin
ToolBar1.Perform(TB_CUSTOMIZE, 0, 0);
end;

-------------------------------------------------------
this code show system custom toolbar dialogs, but can't use? why?


0
Comment
Question by:kiss2
10 Comments
 

Author Comment

by:kiss2
ID: 6917720
up
0
 
LVL 9

Expert Comment

by:ginsonic
ID: 6917840
listening
0
 

Author Comment

by:kiss2
ID: 6918049
Is this a BUG of Delphi??
0
Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 

Author Comment

by:kiss2
ID: 6920334
Nobody can answer???
0
 
LVL 3

Expert Comment

by:raidos
ID: 6920871
0
 

Author Comment

by:kiss2
ID: 6922173
Thanks to raidos!
I'm already read this, but I'm sorry I don't understand.
How to receive TBN_BEGINADJUST,TBN_RESET,etc. notification?

Can you give me a sample of handle this dialogs?

My Email: kiss2@yeah.net


Regards
0
 
LVL 3

Accepted Solution

by:
raidos earned 50 total points
ID: 6922636
what version of delphi are you using ?

if your using delphi 6, then just use the TToolbar's event handlers, otherwise you will have to write your own handler that will handle the WM_NOTIFY messages sent by the Customization box..unless i missed something..

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ToolWin, ComCtrls, CommCtrl, StdCtrls;

type
  TForm1 = class(TForm)
    ToolBar1: TToolBar;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
    Procedure WMNOTIFY(Var MSG: TWMNOTIFY); Message WM_NOTIFY;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

{ TForm1 }

procedure TForm1.WMNOTIFY(var MSG: TWMNOTIFY);
begin
  Inherited;
  Case Msg.NMHdr^.code Of
    TBN_BEGINADJUST: Begin
      ShowMessage('BEGINADJUST');
    End;
    TBN_RESET: Begin
      ShowMessage('BEGINADJUST');
    End;
    {TBN_ETC...: Begin

    End;}
  End;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Toolbar1.Perform(TB_CUSTOMIZE,0,0)
end;

end.


Regards
//raidos
0
 

Author Comment

by:kiss2
ID: 6922680
Thanks!
I using Delphi 6.
I test your code, but can't receive the notification?

First, I test this BUG with this "Delphi\DEMOS\Coolstuf\webbrows.dpr" project.

I open (with this: Toolbar1.Perform(TB_CUSTOMIZE,0,0)
) toolbar dialogs, then move some icon to left list, the icons are disappear from toolbar, close dialogs. Next I open the toolbar dialogs again, but these icon are disappear in left list. I don't know why?

Maybe I don't use this dialogs, how to use?


Thanks!
Regards!
0
 

Author Comment

by:kiss2
ID: 7826463
up
0
 
LVL 1

Expert Comment

by:pnh73
ID: 9002883
No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area that this question is:

PAQ and No Refund

Please leave any comments here within the next seven days.
 
PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER!
 
Paul (pnh73)
EE Cleanup Volunteer
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The uses clause is one of those things that just tends to grow and grow. Most of the time this is in the main form, as it's from this form that all others are called. If you have a big application (including many forms), the uses clause in the in…
Introduction The parallel port is a very commonly known port, it was widely used to connect a printer to the PC, if you look at the back of your computer, for those who don't have newer computers, there will be a port with 25 pins and a small print…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

856 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question