| Marc VdB 2005-06-08, 9:25 am |
| Konrad Hirsch from the german NG showed me some strange "anomalies" of the
form scrollbars of type 2.
Maybe these are in the buglist, but i never realized the strange behaviour
until he showed me his Demoform.
Attached is his original form (Scrollbartest1) and a second one
(Scrollbartest2), with a scrollbar helper object...
Open the two of them and follow the steps below (note : the effects are best
seen if you configured Windows to show the content of a window while draged)
After opening, you see two almost identical forms, the left one is the one
of Konrad Hirsch the other one is the same with an invisible scrollbar
helper object on it (to be found in the third file, scb_help.cc)
Enlarge the left window, by dragging its bottom line down. See the
entryfield appear and the scrollbar still there and not changing the size of
the thumb.
Now do the same with the form on the right and see a first action of the
scrollbar helper.
Make the left form smaller, to approximately half ofits original size,
observe the scrollbar and drag the thumb to the bottom :-(
Do the same with the right form :-)
Widen the left form, to see the entryfield again, continue to widen,
continue, continue ... end of screen :-(
Do the same with the right form :-)
Make the width of the left form smaller :-(
Right form :-)
Believe me, i had a lot of fun doing the scrollbar helper class 8-)
CU, Marc
--
------
www.vdblogic.de/dbl/homee.htm
------
begin 666 Scrollbartest1.wfm
M*BH@14Y$($A%041%4B M+2!D;R!N;W0@<F5M;W9E('1H:7,@;&EN90T*+R\-
M"B\O($=E;F5R871E9"!O;B Q-RXP,RXR,# U#0HO+PT*<&%R86UE=&5R(&)-
M;V1A; T*;&]C86P@9@T*9B ](&YE=R!38W)O;&QB87)T97-T,49O<FTH*0T*
M:68@*&)-;V1A;"D-"B @(&8N;61I(#T@9F%L<V4@+R\@96YS=7)E(&YO="!-
M1$D-"B @(&8N<F5A9$UO9&%L*"D-"F5L<V4-"B @(&8N;W!E;B@I#0IE;F1I
M9@T*#0IC;&%S<R!38W)O;&QB87)T97-T,49O<FT@;V8@1D]230T*(" @=VET
M:" H=&AI<RD-"B @(" @(&UE=')I8R ](#8)+R\@4&EX96QS#0H@(" @("!H
M96EG:'0@/2 S-3(N, T*(" @(" @;&5F=" ](#@U+C -"B @(" @('1O<" ]
M(#(R+C -"B @(" @('=I9'1H(#T@,S0W+C -"B @(" @('1E>'0@/2 B1F]R
M;2!W:71H('1Y<&4@,B!S8W)O;&QB87(B#0H@(" @("!S8W)O;&Q"87(@/2 R
M"2\O($%U=&\-"B @(&5N9'=I=&@-"@T*(" @=&AI<RY%3E12649)14Q$,2 ]
M(& YE=R!%3E12649)14Q$*'
1H:7,I#0H@("!W:71H("AT:&ES+D5.5%)91DE%
M3$0Q*0T*(" @(" @:&5I9VAT(#T@,C(N, T*(" @(" @;&5F=" ](# N, T*
M(" @(" @=&]P(#T@,"XP#0H@(" @("!W:61T:" ](#$P-2XP#0H@(" @("!V
M86QU92 ](")%;G1R>69I96QD,2(-"B @(&5N9'=I=&@-"@T*(" @=&AI<RY%
M3E12649)14Q$,B ](& YE=R!%3E12649)14Q$*'
1H:7,I#0H@("!W:71H("AT
M:&ES+D5.5%)91DE%3$0R*0T*(" @(" @:&5I9VAT(#T@,C(N, T*(" @(" @
M;&5F=" ](#(P,RXP#0H@(" @("!T;W @/2 S-C,N, T*(" @(" @=VED=&@@
M/2 Q,3(N, T*(" @(" @=F%L=64@/2 B16YT<GEF:65L9#(B#0H@("!E;F1W
M:71H#0H-"B @('1H:7,N5$585$Q!0D5
,,2 ](&YE=R!415A43$%"14PH=&AI
M<RD-"B @('=I=& @@*'1H:7,N5$585$Q!0D
5,,2D-"B @(" @(&AE:6=H=" ]
M(#(R+C -"B @(" @(&QE9G0@/2 R,S$N, T*(" @(" @=&]P(#T@,S,P+C -
M"B @(" @('=I9'1H(#T@.#0N, T*(" @(" @=&5X=" ](")38W)O;&QB87(@
?5&5S="(-"B @(&5N9'=I=&@-"@T*96YD8VQA<W,-"@``
`
end
begin 666 Scrollbartest2.wfm
M<V5T('!R;V-E9'5R92!T;R!S8V)?:&5L<"YC8R!A9&1I=&EV90T**BH@14Y$
M($A%041%4B M+2!D;R!N;W0@<F5M;W9E('1H:7,@;&EN90T*+R\-"B\O($=E
M;F5R871E9"!O;B Q-RXP,RXR,# U#0HO+PT*<&%R86UE=&5R(&)-;V1A; T*
M;&]C86P@9@T*9B ](&YE=R!38W)O;&QB87)T97-T,49O<FTH*0T*:68@*&)-
M;V1A;"D-"B @(&8N;61I(#T@9F%L<V4@+R\@96YS=7)E(&YO="!-1$D-"B @
M(&8N<F5A9$UO9&%L*"D-"F5L<V4-"B @(& 8N;W!E;B@I#0IE;F1I9@
T*#0IC
M;&%S<R!38W)O;&QB87)T97-T,49O<FT@;V8@1D]230T*(" @=VET:" H=&AI
M<RD-"B @(" @(&]N4VEZ92 ]('L[(&9O<FTN<V-B+G-E=&EN9F\H*7T-"B @
M(" @(&]N3W!E;B ](&-L87-S.CI)3DE4#0H@(" @("!M971R:6,@/2 V"2\O
M(%!I>&5L<PT*(" @(" @:&5I9VAT(#T@,S0Y+C -"B @(" @(&QE9G0@/2 T
M-C@N, T*(" @(" @=&]P(#T@,C,N, T*(" @(" @=VED=&@@/2 S-#,N, T*
M(" @(" @=&5X=" ](")&;W)M('=I=&@@='EP92 R('-C<F]L;&)A<B(-"B @
M(" @('-C<F]L;$)A<B ](#()+R\@075T;PT*(" @96YD=VET: T*#0H@("!T
M:&ES+D5. 5%)91DE%3$0Q(#T@;F5W
($5.5%)91DE%3$0H=&AI<RD-"B @('=I
M=&@@*'1H:7,N14Y44EE&245,1#$I#0H@(" @("!H96EG:'0@/2 R,BXP#0H@
M(" @("!L969T(#T@,"XP#0H@(" @("!T;W @/2 P+C -"B @(" @('=I9'1H
M(#T@,3 U+C -"B @(" @('9A;'5E(#T@(D5N=')
Y9FEE;&0Q(@T*(" @96YD
M=VET: T*#0H@("!T:&ES+D5. 5%)91DE%3$0R(#T@;F5W
($5.5%)91DE%3$0H
M=&AI<RD-"B @('=I=&@@*'1H:7,N14Y44EE&245,1#(I#0H@(" @("!H96EG
M:'0@/2 R,BXP#0H@(" @("!L969T(#T@,C S+C -"B @(" @('1O<" ](#,V
M,RXP#0H@(" @("!W:61T:" ](#$Q,BXP#0H@(" @("!V86QU92 ](")%;G1R
M>69I96QD,B(-"B @(&5N9'=I=&@-"@T*(" @=&AI<RY415A43$%"14PQ(#T@
M;F5W(%1%6%1,04)%3"AT:&ES*0T*(" @=VET:" H=&AI<RY415A43$%"14PQ
M*0T*(" @(" @:&5I9VAT(#T@,C(N, T*(" @(" @;&5F=" ](#(S,2XP#0H@
M(" @("!T;W @/2 S,S N, T*(" @(" @=VED=&@@/2 X-"XP#0H@(" @("!T
M97AT(#T@(E-C<F]L;&)A<B!497-T(@T*(" @96YD=VET: T*#0H-"B @(&9U
M;F-T:6]N(&EN:70-"B @(" @('1H:7,N<V-B(#T@;F5W('-C<F]L;&EN9F\H
M=&AI<RD-"B @(" @('=I=&@H=&AI<RD-"B @(" @(" @('-C8BYN9&5E<#UE
M;G1R>69I96QD,BYT;W K96YT<GEF:65L9#(N:&5I9VAT*S4-"B @(" @(" @
M('-C8BYN=VED93UE;G1R> 69I96QD,BYL969T*V5N=
')Y9FEE;&0R+G=I9'1H
M*S4-"B @(" @(" @(&]N<VEZ92@I#0H@(" @("!E;F1W:71H#0H@("!R971U
..<FX-"F5N9&-L87-S#0H`
`
end
begin 666 scb_help.cc
M+RH@#0H@("!&:6QE.B @("!#;&%S<R!S8V)?:&5L<"YC8PT*"4%U=&]R.B @
M($UA<F,@5F%N(&1E;B!"97)G:&5N#0H@("!38W)O;&QB87(M2&5L<&5R($ML
M87-S92!F_'(@2V]N<F%D($AI<G-C: T*(" @1&%T92 Z(# Y+3 S+3 U#0H-
M"B @(%1H:7,@;V)J96-T('=I;&P@(FYO<FUA;&EZ92(@=&AE(&)E:&%V:6]U
M< B!O9B!D8F%S92!F;W)M+
7-C<F]L;&)A<G,@#0H@("!+;VYR860@2&ER<V-H
M('!O:6YT960@;W5T+"!T:& %T('1H92!B96AA=FEO=7
(@;V8@='EP92 R('-C
M<F]L;&)A<G,@:7,@#0H@("!R96%L;'D@;&]U<WD@*'-E92!T:')E860@:6X@
M3D<I#0H-"B @(%5S86=E(#H@:6X@=&AE(&]N;W!E;B!O9B!T:&4@9F]R;2 H
M;65T<FEC(#8I+"!I;G-T86YT:6%T92!A('-C<F]L;&EN9F\M;V)J96-T( T*
M(" @86YD('-E="!T:&4@;F1E97 @86YD(&YW:61E('!R;W!E<G1I97,@*'1H
M870@:7,@=&AE(&-O;W)D:6YA=&5S(&]F('1H92 -"B @(&-O;G1R;VP@870@
M=&AE(&)O='1O;2!A;F0@870@=&AE(&]U=&5R(')I9VAT*0T*(" @=&AE;B!I
M;B!T:&4@;VYS:7IE(&]F('1H92!F;W)M+" !C86QL('1H92!3971I;F
9O+6UE
M=&AO9 T*#0H@("!F;W)M+FUE=')I8R ](#8@+R\@;75S="!B92!P:7AE; T*
M(" @9F]R;2YS8W)O;&QT=6YE<B ](&YE=R!S8W)O;&QI;F9O*&9O<FTI#0H@
M("!F;W)M+G-C< F]L;'1U;F5R+FYD965P(
#T@9F]R;2YE;G1R>69I96QD.2YT
M;W K9F]R;2YE;G1R>69I96QD.2YH96EG:'0-"@EF;W)M+G-C<F]L;'1U;F5R
M+FYW:61E(#T@9F]R;2Y
E;G1R>69I96QD-"YL969T*V9O<FTN96YT<GEF:65L
M9#0N=VED=&@-"B @(&9O<FTN;VYS:7IE(#T@>SL@9F]R;2YS8W)O;&QT=6YE
M<BYS971I;F9O*"D@?0T*#0HJ+R @(" @(" @(" @(" @(" @(" @(" @(" @
M(" -" @T*(V1E9FEN92!30E](3
U):(" @(" @(" @(" @(# -"B-D969I;F4@
M4T)?5D525" @(" @(" @(" @(" Q#0HC9&5F:6YE(%-)1E]!3$P)"0D)(#<-
M" @T**BHJ*BHJ*BHJ*BHJ*
BHJ*BHJ*BHJ*BHJ*BHJ#
0HJ($)E9VEN(&]F(&-L
M87-S(%-C<F]L;&EN9F\-" BHJ*BHJ*BHJ*BHJ*BHJ*
BHJ*BHJ*BHJ*BHJ*@T*
M#0I#;&%S<R!38W)O;&Q);F9O*&]F;W)M*2!/9B!/8FIE8W0-"@T*"2I#3TY3
M5%)50U1/4@T*"71H:7,N:&]R(#T@;F5W('-C7V)A<V4H*0D)"2\O('-C<F]L
M;&EN9F\@<W1R=6-T=7)E(&9O<B!H;W(N('-C<F]L;&)A<@T*(" @=&AI<RYV
M97(@/2!N97<@<V-?8F%S92@I"0D)+R\@9F]R('9E<G1I8V%L(%-"#0H-"B @
M('1H:7,N;F1E97 @/2!O9F]R;2YH96EG:'0)"0DO+R!C;V]R9&EN871E<R!O
M9B!B;W1T;VT@8V]N=')
O; T*"71H:7,N;G=I9&4@/2!O9F]R;2YW:61T: D)
M"2\O(&UO<W0@<FEG:'0@8V]N=')O; T*(" @=&AI<RYO9F]R;2 ](&]F;W)M
M"0D)"0DO+R!R969E<F5N8V4@=&\@=&AE(&9O<FT-"@T*"71H:7,N:&]R+G-E
M=&QO;F<H,"PR."D)(" @" 0DO+R!I;FET:6%L:7IE(
'1H92!38W)O;&QI;F9O
M+5-T<G5C='5R90T*(" @=&AI<RYV97(N<V5T;&]N9R@P+#(X*2 -"B @('1H
M:7,N:&]R+G-E=&QO;F<H-"PW*2 @"0D)"2\O(&Y286YG92QN4&%G92QN<&]S
M( T*(" @=&AI<RYV97(N<V5T;&]N9R@T+#<I#0H-"B @("H@;F5E9&5D($%0
M22U&=6YC=&EO;G,@#0H@("!E>'1E<FX@8VQO9VEC86P@;79?1V5T4V-R;VQL
M:6YF;RAC:&%N9&QE+&-I;G0L8W!T<BD@=7-E<C,R(&9R;VT@(D=E=%-C<F]L
M;$EN9F\B#0H@("!E>'1E<FX@8VEN="!M=E]3971S8W)O;&QI;F9O*&-H86YD
M;&4L8VEN="QC<'1R+&-L;V=I8V%L*2!U<V5R,S(@9G)O;2 B4V5T4V-R;VQL
M26YF;R(-"B @(&5X=&5R;B!C:6YT(&UV7T=E=%-C<F]L;%!O<RAC:&%N9&QE
M+&-I;G0I('5S97(S,B!F<F]M(")'97138W)O;&Q0;W,B#0H@("!E>'1E<FX@
M8VQO;F<@;79?4V5N9$UE<W- A9V4H8VAA;F1L92QC=6E
N="QC;&]N9RQC;&]N
M9RD@=7-E<C,R(&9R;VT@(E-E;F1-97-S86=E02(-"@T*(" @9G5N8W1I;VX@
M4V5T26YF;PT*(" @"6QO8V%L('!O<RQN<"QN;6%X<V-R;VQL#0H@(" @(" O
M+R!F:7)S="!T:&4@=F5R=&EC86P@4T(@. B!F:6QL('1H92!38W)O;
&QI;F9O
M+7-T< G5C='5R92!W:71H('1H9
2!V86QU97,-"B @(" @("\O(&YE8V5S<V%R
M>2!F;W(@8V]R<F5C="!B96AA=FEO=7(-"B @(" @(&YM87AS8W)O;&P];6%X
M*# L=&AI<RYN9&5E<"TQ*2 @#0H@(" @("!T:&ES+G9E<BYS971L;VYG*#$R
M+&YM87AS8W)O;&PI#0H@(" @("!T:&ES+G9E< BYS971L;VYG*#$V+'1H:
7,N
M;V9O<FTN:&5I9VAT*0T*(" @(" @<&]S/6UV7T=E=%-C<F]L;%!O<RAT:&ES
M+F]F;W)M+FAW;F0L4T)
?5F5R="D-"B @(" @('1H:7,N=F5R+G-E=&QO;F<H
M,C L<&]S*0T*(" @(" @;G ]:'1O:2AI=&]H*'!O<RDK)S P,#0G*0T*(" @
M(" @;79?<V5N9&UE<W-A9V4H=&AI< RYO9F]R;2YH=VYD+#!X,
3$U+&YP+# I
M#0H@(" @("!M=E]S971S8W)O;&QI;F9O*'1H:7,N;V9O<FTN:'=N9"Q30E]6
M15)4+'1H:7,N=F5R+'1
R=64I( T*(" @(" @+R\@;F]W('1H92!H;W)
I>F]N
M=&%L(%-"#0H@(" @("!N;6%X<V-R;VQL/6UA>"@P+'1H:7,N;G=I9&4M,2D@
M( T*(" @(" @=&AI<RYH;W(N<V5T;&]N9R@Q,BQN;6%X<V-R;VQL*0T*(" @
M(" @=&AI<RYH;W(N<V5T;&]N9R@Q-BQT:& ES+F]F;W)M+G=I9'1H*0
T*(" @
M(" @<&]S/6UV7T=E=%-C<F]L;%!O<RAT:& ES+F]F;W)M+FAW;F0L4T
)?2&]R
M>BD-"B @(" @('1H:7,N:&]R+G-E=&QO;F<H,C L<&]S*0T*(" @(" @;G ]
M:'1O:2AI=&]H*'!O<RDK)S P,#0G*0T*(" @(" @;79?<V5N9&UE<W-A9V4H
M=&AI< RYO9F]R;2YH=VYD+#!X,
3$T+&YP+# I#0H@(" @("!M=E]S971S8W)O
M;&QI;F9O*'1H:7,N;V9O<FTN:'=N9"Q30E](3U):+'1H:7,N:&]R+'1R=64I
M( T*" 7)E='5R;@T*#0IE;F1C;
&%S<PD)"0D)" 0D)+R\O+R\O+R\O+R\@(
$5N
M9"!O9B!#;&%S<R!38W)O;&QI;F9O#0H-" BHJ*BHJ*BHJ*BHJ*BHJ*
BHJ*BHJ
M*BHJ*BHJ*BHJ#0HJ($)
E9VEN($)A<V4M0VQA<W,-"BHJ*BHJ*BHJ*BHJ*BHJ
M*BHJ*BHJ*BHJ*BHJ*BH
J#0IC;&%S<R!30U]"87-E(&]F(%-T<FEN9PT*"71H
M:7,N<W1R:6YG(#T@<F5P;&EC871E*&-H<B@P*2PQ-"D-"B @(&9U;F-T:6]N
M('-E=$QO;F<H;DEN9&5X+"!N5F%L=64I" 0DO+R!S971Z92!D96X@;
&]N9R!7
M97)T(&%N(&1E< B!G97=U96YS8VAT96X@#
0H@(" @('1H:7,N<V5T0GET92AN
M26YD97@L(&)I=&%N9" AN5F%L=64L(#!X1D8I*2
@(" O+R!0;W-I=&EO;B!I
M;B!D97(@4W1R=4MT=7(
-"B @(" @=&AI<RYS971">71E*&Y);F1E>" K(#$L
M(&)I=')S:&EF="AB:71A;F0H;E9A;'5E+" P>$9&,# I+" X*2D-"B @(" @
M=&AI<RYS971">71E*&Y);F1E>" K(#(L(&)I=')S:&EF="AB:71A;F0H;E9A
M;'5E+" P>$9&,# P,"DL(#$V*2D-"B @(" @=&AI<RYS971">71E*&Y);F1E
M>" K(#,L(&)I=')S:&EF="AB:71A;F0H;E9A;'5E+" P>#=&,# P,# P*2P@
M,C0I*VEI9BAN=F%L=64
\,"PQ,C@L,"DI#0H@("!R971U<FX@#0IE;F1C;&%S
L<PD)"0D)" 0D)+R\O+R\O+R\O+R\@1
6YD(&]F($)A<V4M0VQA<W,-"@T*#0H`
`
end
|