"Rune Simonsen" <rrs@nospam.dolmer> skrev i en meddelelse
news:428bd966$0$236$edfadb0f@dread12.news.tele.dk...
> On Wed, 11 May 2005 17:01:24 +0200, "Hans Larsen" <Nospam> wrote:
>
> Hej. Ikke at jeg rigtig ved noget om de ting du spørger om, men et bud
> har man vel altid :)
>
>> Jeg har nogle forms, hvor mængden af indhold fylder mere end formens
>> størrelse, hvorfor der er en veritikal scrollbar. Hvordan kan jeg få
>> musens
>> rullehjul til at virke, så man denne kan scrolle op/ned?
>
> Det lyder mystisk, her hos mig gør den det automatisk uden der skal
> gøres noget.
Jeg har lige dobbelttjekket ved at oprette et nyt projekt... Den vil under
ingen omstændigheder som standard lade musens scroll hjul fungere i mine
projekter.Men ja... Det virker meget mystisk.
> Ellers er det vel noget med at fange FormMouseWheelDown
> events på formen og så selv lave noget med at ændre
> form1.VertScrollBar.Position.
Synes jeg heller ikke at få til at fungere, men vil lige lege lidt med det.
>> Hvordan får jeg lidt "luft" mellem den nederste editboks og formens kant
>> uden at ændre formens størrelse i design mode?
>
> Ændrer på den ved runtime via kode? form1.height := form1.height
> +noget passende? Men hvorfor ikke bare ændre det i design mode?
Problemet er, at jeg ikke kan få den til det. Problemet kommer, når min form
fylder mere end selve skærmens størrelse. Så kan jeg ikke få "luft" mellem
formens kant og mine labels/knapper. Det må jeg også prøve at lege lidt
med. Det er lidt tricky at forklare
>> Hvordan kan jeg give formen en minimumsbredde... Dvs. at den ikke kan
>> gøres
>> mindre end en given størrelse?
>
> form1.Constraints.MinWidth := noget passende? Kan også ændres under
> design time i object inspektoren.
Tak. Det var der, den gemte sig
> Hvis man ikke lige var så heldig at der var sådan en option kunne man
> også fange et passende resize event og så give formen en passende
> størrelse hvis brugeren havde gjort noget dumt.
>
>> Hvordan kan jeg undgå at formen "trækkes væk" fra indholdet, når den
>> gøres
>> mindre? (Fx. en form med nogle labels og editbokse. (3 kolonner hvor
>> labels
>> er i venstre kolonne og editboksene står ud for i kolonne 2 og 3) Når
>> formen
>> gøres mindre, så er der ikke plads til dem alle længere). Det optimale
>> vil
>> være, at editboksene har en fast bredde og mine labels kan variere dens
>> bredde afhængig af formens bredde. Hvis teksten i en labels ved
>> minimering
>> kommer til at fylde mere end labelens bredde, kan labelen evt. gøres
>> højere
>> i stedet for at få plads til teksten. Ved at ændre labels bredde (hvis
>> det
>> er muligt) kan man derved undgå at der kommer en horisontal scrollbar.
>> Hmm... forvirrende, men udfordrende
>
> Det er vel noget med at fange nogle resize events for formen, se
> hvordan størrelsen ser ud efter resize og så tilpasse størrelsen af de
> forskellige komponenter efter dette.
>
>> ***3.***
>> Hvordan sørger jeg for, at jeg kun kan indtaste tal mellem 0-10.000.000
>> (eksempelvis)
>
> En nem metode: Fang et OnChance eller OnKeyPress event i din edit-box
> og se på hvad det er for noget skrammel brugeren har indtastet. Om det
> er et tal testes ved at løbe strengen igennem eller lave en
> konvertering og fange en eventuelt exception. Om tallet har passende
> størrelse kan du jo bare teste med > og <.
>
> Hvis det er noget skidt input kan du jo bare slette det og eventuelt
> vise en balladebox af en art.
Endnu engang tak for ovenstående.
> Jeg kan i øvrigt anbefale "Delphi4 Programmering" af Per Amdal
> Steffensen fra forlaget Systime, som kan svare på alle dine spørgsmål
> og give dig værktøjer til at opstøve svarene på mange af dem der
> dukker op senere. Men bare klø på - det bliver sjovere og sjovere jo
> bedre man bliver :)
Jeg har netop bestilt ovenstående bog, da den er anbefalet af flere.