This object is similar to theTBevel in that it can put a border around other objects but it has other uses also. The types of styles available are greater than with a bevel and it 'owns' the objects placed on it. This means that if you set the Visible property of the panel to .False. all object that are on the panel, automatically become invisible also. The same applies to the Enabled property. This can be very useful when you know you want to effect a group of objects all the same way at the same time.
The icon for this object is on the Standard page.
PALETTE ICON & EXAMPLE
The following are the properties that apply to this object. Some are defined in Common Properties and are linked to their appropriate page.
|In this object the default is taCenter
|This is the text that is displayed on the panel. The default is the name of the object.
|This will effect the look of the panel. The options are: bvLowered, bvNone (the default value), bvRaised and bvSpace.
|This will also effect the look of the panel. The options are: bvLowered, bvNone, bvRaised (the default value) and bvSpace.
|This is how wide the bevel is in pixels. The default value is 1.
|By manipulating all four of these properties (BevelInner, BevelOuter, BevelWidth and BorderStyle) you can completely change the look of the panel.
If you decide to put a TPanel on your form after other objects have already been added that you want to move to the panel, you can't just move them to the panel. You can, however, copy it (click on the object, right click and choose copy or press CTL+C) and then paste it on the panel (right click on the panel and choose Paste or CTL+V) and then delete the original object.
This object has a single event that is called if your user clicks on the object. This event looks to your program for a special label. It is made up of the object Name, a period (.) and the Event name (Click). The full event name would be ObjectName.Click:. You would not return a value from the program, just a simple RET is all that is required. So, the user clicks on the object, if the event label exists the routine is called, you return from the routine, and the user has control again.
NOTE: You can have multiple objects call the same routine by 'stacking' the event labels on top of each other. For example, if you had two buttons you wanted to call the same event, you could do the following:
//event routine code would go here.
The labels are not part of the code executed. They are just place keepers and tell the program where to go.