pagecontrolでいくつかページがフォーム上にあるのですが、このページの順番をA B C D から B A D C のように変えたいのですが、どのようにすればよいのでしょうか? これは、EXCELSHEETのように、ただ入れ替えたいだけです。DELPHI5をつかっています。
TTabSheetのPageIndexプロパティかな。
>このページの順番をA B C D から B A D C のように変えたい
B.PageIndex := 0;
D.PageIndex := 2;
機能しました。どうもありがとうございました。
真琴:「ExcelみたいにPageControlもタブをドラッグして順番変えたければコレで、ね? おじいちゃん」
uses
..., CommCtrl;
type
TPageControl = class(ComCtrls.TPageControl)
private
procedure DragDrop(Source: TObject; X, Y: Integer); override;
procedure DragOver(Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean); override;
procedure WmLButtonDown(var Message: TMessage); message WM_LBUTTONDOWN;
end;
type
TForm1 = class(TForm)
PageControl1: TPageControl;
PageControl2: TPageControl;
.........
implementation
{$R *.dfm}
procedure TPageControl.WmLButtonDown(var Message: TMessage);
begin
inherited;
BeginDrag(False);
end;
procedure TPageControl.DragDrop(Source: TObject; X, Y: Integer);
var
Rect: TRect;
i: Integer;
begin
inherited;
for i:=0 to Pred(PageCount) do begin
Perform(TCM_GETITEMRECT, WParam(i), LParam(@Rect));
if PtInRect(Rect, Point(X, Y)) then begin
if i <> ActivePage.PageIndex then ActivePage.PageIndex := i;
exit;
end;
end;
end;
procedure TPageControl.DragOver(Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean);
begin
inherited;
Accept := (Source = Self);
end;
勝爺:「そんなことより、ナンでだ? 行方不明だったマコトが突然現れたら中学生になってたり、急に季節が正月になってたり…」
真琴:「おじいちゃん、それはさっき一応説明してあげたでしょ?」
勝爺:「あんな説明じゃさっぱり分かンねぇぞ、一体何がどうなってンだ?」
真琴:「ハルコさんと協力して、おじいちゃんを寝てる間にコッチにドラッグしてきたの、こうして再会できたンだから、もっと素直に喜んでよ」
勝爺:「うん、マコトにまた会えたのはホントに良かった、けどよ、あの話はナンと言うか有り得ねぇだろう…」
真琴:「でも本当なの、だから、アタシとの約束はチャンと守ってね? お願い」
勝爺:「約束? 何の?」
真琴:「ん〜、もう…、"サーフィン止めてとは言わないけど、危ないコトは絶対にしないでね"っていう約束」
勝爺:「あぁ、それは分かった分かった、…だけど、あんな話を信じろって言われてもなぁ」
真琴:「ハルコさんが戻ってきたら、そのコトはもっと納得できるように説明してもらうから…」
勝爺:「そういや、ハルコはドコ行ったんだ?」
真琴:「ハルコさんは"忘れ物を取ったら直ぐに戻るから"って、またアッチに行って…」
勝爺:「で、いつ戻って来るんだ? 戻るのが遅すぎるンじゃねぇのか?」
真琴:「そうなの、アタシもチョット心配になってきたんだけど…まさか、間違ってココとは違う宇宙に行ってしまったとか…」
ツイート | ![]() |