ScrollBox max arvo?

Koodaan XP:llä (32-bit) ja Delphillä työkseni. Huomasin viikolla että pystysuuntainen scrollbar antaa position arvon 16-bittisenä lukuna, eli 0..65535. Jostain käyttiksen syövereistä tuo 16-bit luku tulee. Ihan menee rajoilla että riittää tuo 65535 (55000 ja risat tullut demo materiaalilla vastaan). Omatekoinen (xml/teksti) editori on kyseessä.

Luulisi että nykyään olisi jo 32-bittisen muuttujat (vähintään) käytössä?
6566
Äänestä

Muut lukivat myös

Vastaukset 6

Vanhimmat

Tai sitten kyseessä on Delphin joku yhteensopivuusrasite kun Delphissä on koitettu pitää hommia yhteensopivana aina ensimmäiseen versioon saakka.

Eipä tuolla väliä ole, kiertää ongelman vaan.

Äänestä
  • Kerto ja jakolaskullahan tuon saa kierrettyä, mutta tympäsee silti, ylimääräistä säätöä.

    Tuo Delphin ScrollBox on (tietääkseni) suora wrapperi windowsin scrollbareista, käytän suoraan WM_VSCROLL metodia, jotta rullauksen saa toimimaan "reaali aikaisesti" kun hiirellä vetää sitä namiskaa ylös- tai alaspäin

    procedure WMVScroll(var Msg: TMessage); message WM_VSCROLL;

    Eli tuon parametrin Msg.Pos arvo on 16-bittinen

    Voi toki olla Delphi rajoituskin?

    Äänestä

Et nyt kertonut mikä Delphi versio on kyseessä, mutta ainakin 2009 versiossa on muuttunut paljon unicoden myötä, ääkkösiäkin voisi käyttää muuttuja nimissä.

Overraidaa se omalla funkkari versiolla mikäli ei sovi sun suunnitekmiin.

Äänestä
  • Jos Winkkari lähettää sen 16-bittisenä, vaikka itsellä olisi vastassa 64-bittinen muuttuja, ei se siitä paremmaksi elämä muutu! Tämä on joku Windowsin "Historia" rajoitus!

    Delphi 2006 Pro ja Windows XP Pro 32-bit on käytössä

    Olen käyttänyt TnT-kontrolleja Unicoden (UTF-8) käsittelyyn, lisäksi on käytössä unicoden standarti kirjasrto (ala WideString) ettei homma mene jorpakkoon! Hyvin olen pärjännyt tähän asti UTF-8:in kanssa :)

    Äänestä

Eikö 32bit Wintöötin viestissä siirry 4tavuinen int-arvo, sitä arvoa sitten kohdellaan low/high bitti laskennalla, joten, syy ei ole delphin ei kenenkään muunkaan, pitää kai tarkistaa onko kuusnepassa sama 8tavun jako neljään, luulisin noin..

Äänestä

Juu, ratkaisu löytyikin kun koodasin koko höskän melkein uusiksi ja unohdin TScrollBox komponentin. Eli periytin komponentin TCustomControllista ja tein omat scollbarit siihen.

Äänestä

Kommentoi aloitusta


pöh.. kirjoitti:

Koodaan XP:llä (32-bit) ja Delphillä työkseni. Huomasin viikolla että pystysuuntainen scrollbar antaa position arvon 16-bittisenä lukuna, eli 0..65535. Jostain käyttiksen syövereistä tuo 16-bit luku tulee. Ihan menee rajoilla että riittää tuo 65535 (55000 ja risat tullut demo materiaalilla vastaan). Omatekoinen (xml/teksti) editori on kyseessä.

Luulisi että nykyään olisi jo 32-bittisen muuttujat (vähintään) käytössä?

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu