Create  Edit  Diff  Phillro Industries  Index  Search  Changes  History  Source  RSS  Note  wikifarm  Login

Phi::Panel

Phi::Panel

汎用パネルコントロール

Panel コンポーネントを使うと,空のパネルをフォームに配置できます。パネルコンポーネントはコントロールの周囲のベベル境界を提供するプロパティ,およびパネルに埋め込まれる子コントロールの配置の管理を支援するメソッドを持ちます。

パネルを使うと,グループボックスを使う場合と同様の方法でコントロールをまとめることができますが,グループボックスのアウトラインではなくベベル境界が付けられます(または境界が付けられません)。通常,パネルは 1 つのフォーム内のコントロールグループに使われます。ほかのフォームで同じようにグループ化する場合は,フレームを使うとよいでしょう。

境界のないパネルは,ドラッグアンドドックを使うアプリケーションを開発する場合にドッキング場所として有効です。

パネルを使ってステータスバーまたはツールバーを実装できますが, Phi::ToolBar および Phi::StatusBar クラスを使うことをお勧めします。

super class

Phi::WinControl

class methods

new(parent[, name, caption]) : Phi::Panel

properties

alignment : Fixnum (Phi-Alignment)

パネル内でどのようにキャプションを揃えるか

bevel_inner : Fixnum (Cah)

パネルの内部ベベルのスタイル

bevel_outer : Fixnum (Cah)

パネルの外部ベベルのスタイル

bevel_width : Fixnum

パネルの内部ベベルと外部ベベルの幅

Panel#bevel_inner? と Panel#bevel_outer? がともに BV_NONE の場合, bevel_width は無効です。

両方のベベルを除去するには, bevel_width を 0 に設定するのではなく, Panel#bevel_inner? と Panel#bevel_outer? を BV_NONE に設定します。その方が描画の際のオーバーヘッドが小さくなります。

border_style : Fixnum (Phi-BorderStyle)

パネルコントロールの周囲に描く線のスタイル

BS_NONE
非可視境界
BS_SINGLE
一重境界線

border_width : Fixnum

外部ベベルと内部ベベルとの間の距離

border_width を使うと,パネルの周囲の境界線の幅を指定できます。値が 0 の場合,境界線は表示されません。

パネルの境界線は外部ベベルと内部ベベルとの間の領域です。境界線は,内部ベベルが隆起しているか,陥没している場合に見えるだけですが,BevelInner が bvNone の場合でも,パネル内でのキャプションの位置に影響します。Alignment プロパティが taCenter でない場合,Caption は境界線の内側の端に揃えられます。この端は,BevelInner が bvNone の場合は外部ベベルからBorderWidth で指定されるピクセル数分だけ内側で,それ以外の場合は内部ベベルの内側の端になります。

full_repaint : Boolean

パネルがサイズ変更されたときに,どのように再描画されるか

true
ベベル境界を含むパネル全体が再描画されます。
false
ベベル境界内の領域のみが再描画されます。

locked : Boolean

ツールバーとして使われるパネルが OLE サーバーによって供給されるツールバーで置き換えられるかどうか

TOleContainer? コンポーネントでツールバーとしてパネルを使用するときは,Locked プロパティを False に設定します。Locked プロパティが True でなければ,TOleContainer に揃ったパネルはいずれも置き換え可能なツールバーとみなされます。パネルが OLE サーバーのツールバーで置き換えられないようにするには,パネルの Locked プロパティを True に設定します。

注意
OLE アプリケーションのツールバーは,フォームの側面のいずれかに揃ったパネル(つまり,その Align プロパティが alTop,alBottom,alLeft,alRight のいずれかに設定された状態)になければなりません。

events

OnDockDrop?

OnDockOver?

OnEnter

OnExit?

OnGetSiteInfo?

OnUnDock?

OnCanResize?

OnClick?

OnConstrainedResize?

OnContextPopup?

OnDblClick?

OnDragDrop?

OnDragOver?

OnEndDock?

OnEndDrag?

OnMouseDown?

OnMouseMove?

OnMouseUp?

OnResize?

OnStartDock?

OnStartDrag?


require "methods_for_wiki"
puts Phi::Panel.methods_for_wiki

_dump => Phi::Component#_dump

action => Phi::Control#action

action= => Phi::Control#action=

action_change => Phi::WinControl#action_change

adjust_client_rect => Phi::WinControl#adjust_client_rect

adjust_size => Phi::WinControl#adjust_size

adjusted_client_rect => Phi::WinControl#adjusted_client_rect

align => Phi::Control#align

align= => Phi::Control#align=

align_controls => Phi::WinControl#align_controls

align_disabled => Phi::WinControl#align_disabled

align_disabled? => Phi::WinControl#align_disabled?

alignment

alignment=

anchors

anchors=

assign_to => Phi::WinControl#assign_to

auto_size

auto_size=

auto_size?

begin_drag => Phi::Control#begin_drag

bevel_inner

bevel_inner=

bevel_outer

bevel_outer=

bevel_width => Phi::WinControl#bevel_width

bevel_width= => Phi::WinControl#bevel_width=

bi_di_mode

bi_di_mode=

border_style

border_style=

border_width => Phi::WinControl#border_width

border_width= => Phi::WinControl#border_width=

bottom => Phi::Control#bottom

bottom= => Phi::Control#bottom=

bounds_rect => Phi::Control#bounds_rect

bounds_rect= => Phi::Control#bounds_rect=

bring_to_front => Phi::Control#bring_to_front

can_auto_size => Phi::WinControl#can_auto_size

can_focus => Phi::WinControl#can_focus

can_resize => Phi::WinControl#can_resize

caption

caption=

change_scale => Phi::WinControl#change_scale

client_height => Phi::Control#client_height

client_height= => Phi::Control#client_height=

client_origin => Phi::WinControl#client_origin

client_rect => Phi::WinControl#client_rect

client_to_parent => Phi::Control#client_to_parent

client_to_screen => Phi::Control#client_to_screen

client_width => Phi::Control#client_width

client_width= => Phi::Control#client_width=

color

color=

component_count => Phi::Component#component_count

components => Phi::Component#components

constrained_resize => Phi::WinControl#constrained_resize

constraints => Phi::Control#constraints

constraints= => Phi::Control#constraints=

contains_control => Phi::WinControl#contains_control

control_at => Phi::WinControl#control_at

control_at_pos => Phi::WinControl#control_at_pos

control_count => Phi::WinControl#control_count

control_extents => Phi::WinControl#control_extents

control_state => Phi::Control#control_state

control_state= => Phi::Control#control_state=

control_style => Phi::Control#control_style

control_style= => Phi::Control#control_style=

controls => Phi::WinControl#controls

controls_aligned => Phi::WinControl#controls_aligned

create_handle => Phi::WinControl#create_handle

create_wnd => Phi::WinControl#create_wnd

ctl3d => Phi::WinControl#ctl3d

ctl3d= => Phi::WinControl#ctl3d=

ctl3d? => Phi::WinControl#ctl3d?

cursor => Phi::Control#cursor

cursor= => Phi::Control#cursor=

custom_align_insert_before => Phi::WinControl#custom_align_insert_before

def_wnd_proc= => Phi::WinControl#def_wnd_proc=

define_properties => Phi::WinControl#define_properties

destroy_handle => Phi::WinControl#destroy_handle

destroy_window_handle => Phi::WinControl#destroy_window_handle

destroy_wnd => Phi::WinControl#destroy_wnd

device_context => Phi::WinControl#device_context

disable_align => Phi::WinControl#disable_align

dock_client_count => Phi::WinControl#dock_client_count

dock_drop => Phi::WinControl#dock_drop

dock_site => Phi::WinControl#dock_site

dock_site= => Phi::WinControl#dock_site=

dock_site? => Phi::WinControl#dock_site?

double_buffered => Phi::WinControl#double_buffered

double_buffered= => Phi::WinControl#double_buffered=

drag_cursor

drag_cursor=

drag_kind

drag_kind=

drag_mode

drag_mode=

dragging => Phi::Control#dragging

draw_text_bi_di_mode_flags => Phi::Control#draw_text_bi_di_mode_flags

draw_text_bi_di_mode_flags_reading_only => Phi::Control#draw_text_bi_di_mode_flags_reading_only

enable_align => Phi::WinControl#enable_align

enabled => Phi::Control#enabled

enabled= => Phi::Control#enabled=

enabled? => Phi::Control#enabled?

end_drag => Phi::Control#end_drag

event_handle

extend => Phi::Persistent#extend

find_child_control => Phi::WinControl#find_child_control

find_next_control => Phi::WinControl#find_next_control

fixup_tab_list => Phi::WinControl#fixup_tab_list

flip_children => Phi::WinControl#flip_children

floating => Phi::Control#floating

floating? => Phi::Control#floating?

floating_dock_site_class= => Phi::Control#floating_dock_site_class=

focused => Phi::WinControl#focused

focused? => Phi::WinControl#focused?

font => Phi::Control#font

font= => Phi::Control#font=

full_repaint

full_repaint=

full_repaint?

handle => Phi::Control#handle

handle_allocated => Phi::WinControl#handle_allocated

handle_needed => Phi::WinControl#handle_needed

has_parent => Phi::Control#has_parent

height => Phi::Control#height

height= => Phi::Control#height=

help_context => Phi::Control#help_context

help_context= => Phi::Control#help_context=

help_keyword => Phi::Control#help_keyword

help_keyword= => Phi::Control#help_keyword=

help_type => Phi::Control#help_type

help_type= => Phi::Control#help_type=

hide => Phi::Control#hide

hint => Phi::Control#hint

hint= => Phi::Control#hint=

host_dock_site => Phi::Control#host_dock_site

host_dock_site= => Phi::Control#host_dock_site=

ime_mode => Phi::WinControl#ime_mode

ime_mode= => Phi::WinControl#ime_mode=

ime_name => Phi::WinControl#ime_name

ime_name= => Phi::WinControl#ime_name=

initiate_action => Phi::Control#initiate_action

insert_control => Phi::WinControl#insert_control

invalidate => Phi::Control#invalidate

is_right_to_left => Phi::Control#is_right_to_left

key_press => Phi::WinControl#key_press

left => Phi::Control#left

left= => Phi::Control#left=

locked

locked=

locked?

lr_dock_width => Phi::Control#lr_dock_width

lr_dock_width= => Phi::Control#lr_dock_width=

marshal_dump => Phi::Component#marshal_dump

marshal_load => Phi::Component#marshal_load

name => Phi::Control#name

name= => Phi::Control#name=

on_can_resize

on_can_resize=

on_click

on_click=

on_constrained_resize

on_constrained_resize=

on_context_popup => Phi::Control#on_context_popup

on_context_popup= => Phi::Control#on_context_popup=

on_dbl_click

on_dbl_click=

on_dock_drop

on_dock_drop=

on_dock_over

on_dock_over=

on_drag_drop

on_drag_drop=

on_drag_over

on_drag_over=

on_end_dock

on_end_dock=

on_end_drag

on_end_drag=

on_enter

on_enter=

パネルがアクティブになったときに呼ばれる。

パネル自体はアクティブになるということがないので、実際にはパネルに配置された画像部品がアクティブになったときに、Panel#on_enter も呼ばれることになります。別のパネルの Edit 窓をクリックした場合には(1)元のEditのon_exit、(2)元のPanelのon_exit、(3)新しいPanelのon_enter、(3)新しいEditのon_enterの順番で呼ばれます。

フォーム自体がアクティブになったとき、アクティブでなくなったときには呼ばれません。(Form#on_activate、Form#on_deactivate が呼ばれます)。

#! ruby -Ks
form = Phi::Form.new
panel1 = Phi::Panel.new form
panel2 = Phi::Panel.new form
panel2.top = panel1.bottom
edit1 = Phi::Edit.new panel1
edit2 = Phi::Edit.new panel2

edit1.on_enter = proc{|*args|p [:edit1_on_enter,args]}
edit2.on_enter = proc{|*args|p [:edit2_on_enter,args]}
edit1.on_exit  = proc{|*args|p [:edit1_on_exit,args]}
edit2.on_exit  = proc{|*args|p [:edit2_on_exit,args]}

panel1.on_enter = proc{|*args|p [:panel1_on_enter,args]}
panel2.on_enter = proc{|*args|p [:panel2_on_enter,args]}
panel1.on_exit  = proc{|*args|p [:panel1_on_exit,args]}
panel2.on_exit  = proc{|*args|p [:panel2_on_exit,args]}

form.on_activate = proc{|*args|p [:form_on_activate,args]}
form.on_deactivate = proc{|*args|p [:form_on_deactivate,args]}

form.show
Phi.mainloop

on_exit

on_exit=

パネルがアクティブでなくなったときに呼ばれます。

on_enterの説明を参照してください。

on_get_site_info

on_get_site_info=

on_mouse_down

on_mouse_down=

on_mouse_move

on_mouse_move=

on_mouse_up

on_mouse_up=

on_resize

on_resize=

on_start_dock

on_start_dock=

on_start_drag

on_start_drag=

on_un_dock

on_un_dock=

paint_controls => Phi::WinControl#paint_controls

paint_window => Phi::WinControl#paint_window

palette_changed => Phi::WinControl#palette_changed

parent => Phi::Control#parent

parent= => Phi::Control#parent=

parent_bi_di_mode

parent_bi_di_mode=

parent_bi_di_mode?

parent_color

parent_color=

parent_color?

parent_ctl3d => Phi::WinControl#parent_ctl3d

parent_ctl3d= => Phi::WinControl#parent_ctl3d=

parent_ctl3d? => Phi::WinControl#parent_ctl3d?

parent_font

parent_font=

parent_font?

parent_form => Phi::Control#parent_form

parent_handle => Phi::WinControl#parent_handle

parent_show_hint

parent_show_hint=

parent_show_hint?

parent_to_client => Phi::Control#parent_to_client

parent_window => Phi::WinControl#parent_window

parent_window= => Phi::WinControl#parent_window=

perform => Phi::Control#perform

popup_menu

popup_menu=

prop_info => Phi::Component#prop_info

read_state => Phi::WinControl#read_state

realign => Phi::WinControl#realign

recreate_wnd => Phi::WinControl#recreate_wnd

rect => Phi::Control#rect

rect= => Phi::Control#rect=

refresh => Phi::Control#refresh

reload_docked_control => Phi::WinControl#reload_docked_control

remove_control => Phi::WinControl#remove_control

repaint => Phi::Control#repaint

reset_ime => Phi::WinControl#reset_ime

right => Phi::Control#right

right= => Phi::Control#right=

right_to_left? => Phi::Control#right_to_left?

scale_by => Phi::WinControl#scale_by

scale_controls => Phi::WinControl#scale_controls

screen_to_client => Phi::Control#screen_to_client

scroll_by => Phi::WinControl#scroll_by

select_first => Phi::WinControl#select_first

select_next => Phi::WinControl#select_next

send_to_back => Phi::Control#send_to_back

set_bounds => Phi::Control#set_bounds

set_child_order => Phi::WinControl#set_child_order

set_focus => Phi::WinControl#set_focus

set_ime => Phi::WinControl#set_ime

set_z_order => Phi::WinControl#set_z_order

show => Phi::Control#show

show_control => Phi::WinControl#show_control

show_hint => Phi::Control#show_hint

show_hint= => Phi::Control#show_hint=

show_hint? => Phi::Control#show_hint?

showing => Phi::WinControl#showing

showing? => Phi::WinControl#showing?

site_info => Phi::WinControl#site_info

stop_align => Phi::WinControl#stop_align

tab_order

tab_order=

tab_order_list => Phi::WinControl#tab_order_list

tab_stop => Phi::WinControl#tab_stop

tab_stop= => Phi::WinControl#tab_stop=

tab_stop? => Phi::WinControl#tab_stop?

tb_dock_height => Phi::Control#tb_dock_height

tb_dock_height= => Phi::Control#tb_dock_height=

top => Phi::Control#top

top= => Phi::Control#top=

top_parent_handle => Phi::WinControl#top_parent_handle

undock_height => Phi::Control#undock_height

undock_height= => Phi::Control#undock_height=

undock_width => Phi::Control#undock_width

undock_width= => Phi::Control#undock_width=

update => Phi::Control#update

update_control_state => Phi::WinControl#update_control_state

use_dock_manager => Phi::WinControl#use_dock_manager

use_dock_manager= => Phi::WinControl#use_dock_manager=

use_dock_manager? => Phi::WinControl#use_dock_manager?

use_right_to_left_reading => Phi::Control#use_right_to_left_reading

use_right_to_left_scroll_bar => Phi::Control#use_right_to_left_scroll_bar

visible => Phi::Control#visible

visible= => Phi::Control#visible=

visible? => Phi::Control#visible?

visible_dock_client_count => Phi::WinControl#visible_dock_client_count

width => Phi::Control#width

width= => Phi::Control#width=

window_handle => Phi::WinControl#window_handle

window_handle= => Phi::WinControl#window_handle=

write_res_file => Phi::Component#write_res_file

Last modified:2006/11/16 14:55:21
Keyword(s):
References:[Phi-Classes] [Phi-Constants] [image_of_controls] [tut-tut_treeview]