创 创意人生 Unregistered / Unconfirmed GUEST, unregistred user! 2006-09-29 #1 我把panel1的DragMode属性设置为dmAutomatic,DragKind属性设置为dkDock,用鼠标拖动Panel1即可以使之悬浮。但目前我想在程序启动之后,即让Panel1悬浮,就象photoshop里面的工具栏目一样。谢谢。
我把panel1的DragMode属性设置为dmAutomatic,DragKind属性设置为dkDock,用鼠标拖动Panel1即可以使之悬浮。但目前我想在程序启动之后,即让Panel1悬浮,就象photoshop里面的工具栏目一样。谢谢。
H hs-kill Unregistered / Unconfirmed GUEST, unregistred user! 2006-09-29 #2 procedure TForm1.FormCreate(Sender: TObject); begin Panel1.ManualDock(nil); end;
创 创意人生 Unregistered / Unconfirmed GUEST, unregistred user! 2006-09-29 #4 好的,谢谢,接分。 另外,请问有什么好办法保存panel1的位置和大小信息,并且下次启动时再赋予panel1吗。
H hs-kill Unregistered / Unconfirmed GUEST, unregistred user! 2006-09-29 #5 恩.....可以用流来保存信息,就和dfm文件一样 如果只是存位置大小....保存top left width height4个数就行了啊 var FM:TFileStream; begin Fm:=TFileStream.Create('temp.dfm',fmCreate); fm.writeComponent(panel1); fm.Free; end;
恩.....可以用流来保存信息,就和dfm文件一样 如果只是存位置大小....保存top left width height4个数就行了啊 var FM:TFileStream; begin Fm:=TFileStream.Create('temp.dfm',fmCreate); fm.writeComponent(panel1); fm.Free; end;
创 创意人生 Unregistered / Unconfirmed GUEST, unregistred user! 2006-09-29 #6 hs-kill: 如果只是存位置大小....保存top left width height4个数就行了啊. ================================================================= 我是只需要保存位置大小就可以了,panel1在悬浮之后,left始终为0,请赐教。
hs-kill: 如果只是存位置大小....保存top left width height4个数就行了啊. ================================================================= 我是只需要保存位置大小就可以了,panel1在悬浮之后,left始终为0,请赐教。
H hs-kill Unregistered / Unconfirmed GUEST, unregistred user! 2006-09-29 #7 哦 当然,dock出来后panel被放在了一个新窗体里,你要取得panel1.Parent的top、left width、height
创 创意人生 Unregistered / Unconfirmed GUEST, unregistred user! 2006-09-30 #8 hs-kill,thanks,没错是这样的。 不好意思,这样还有一个问题是我没有好的办法来保存这些参数到ini文件里,我目前是放在panel1的OnEndDock事件里,就是当鼠标停止拖动之后就保存一次,但假如我改变panel1大小,就并没有触发OnEndDock事件,所以也没有办法保存Width和Height属性。 而在Form_Main的Destroy时间里,不能调用panel1,可能这个时候panel1已经被销毁了。不知有什么好的办法。
hs-kill,thanks,没错是这样的。 不好意思,这样还有一个问题是我没有好的办法来保存这些参数到ini文件里,我目前是放在panel1的OnEndDock事件里,就是当鼠标停止拖动之后就保存一次,但假如我改变panel1大小,就并没有触发OnEndDock事件,所以也没有办法保存Width和Height属性。 而在Form_Main的Destroy时间里,不能调用panel1,可能这个时候panel1已经被销毁了。不知有什么好的办法。
H hs-kill Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-01 #9 在form的close事件里呢? 改变panel大小的时候会触发onresize事件,可以在这里保存 不过记得要先判断下其parent是否存在,也就是是否被dock出来