Tietojen vaihto

Miten merkkijono siirretään/kopioidaan toiselle lomakkeelle?
2527
Äänestä

Muut lukivat myös

Vastaukset 2

Vanhimmat

Delphin merkkijonot ( String ) eivät ole mitenkään sidoksissa lomakkeisiin (TForm -johdannaiset kuten TForm1 jne. ).

Mieti ensin, onko kukin tarvitsemasi merkkijono globaali (eli 1 kpl / ohjelma) vai oliokohtainen.

JOS kyse on globaaleista merkkijonoista, mikset tekisi uutta käännösyksikköä (New / Unit ).

Nimeä uusi UNIT vaikkapa ProjectGlobals.pas

kaikissa niissä uniteissa, joissa tarvitset noita merkkijonoja, lisää tämä lause:

uses

ProjectGlobals;

TAI, jos UNITissa on jo uses -lause, lisää sen loppuun:

,ProjectGlobals;

(vain 1 puolipiste USES -lauseen lopussa, eli välille jäävät muutetaan pilkuiksi).

jos nyt tuon ProjectGlobals -unitin interface -osaan laitat:

var
MJono1, MJono2, MJono3 : String;

niin voit käyttää kaikkia kolmea merkkijonoa kaikista UNITeista joista haluat, lisäät vain ko. ProjectGlobals kyseisen UNITin uses -lauseeseen.

Toki, jos jostain syystä esim. olet lisännyt TForm2 -luokkaan (muualle kuin private / protected -osaan) vaikkapa mjonon:

Testi : String;

niin esim Form1:ssä pääset siihen käsiksi näin:

Form2.Testi := 'haloo';

(joudut lisäämään Unit1:n uses -lauseeseen Unit2, jos TForm2 on määritelty UNITissa Unit2), tosin Delphi huomaa tämän tilanteen automaattisesti käännösvaiheessa ja ehdottaa: "Unit1 references Unit2; do you want to add Unit2 in the USES of Unit1" - vastaat tähän YES ja Delphi hoitaa tilanteen itse.

Äänestä

Kommentoi aloitusta


Täysi Kymppi kirjoitti:

Miten merkkijono siirretään/kopioidaan toiselle lomakkeelle?

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