Miten merkkijono siirretään/kopioidaan toiselle lomakkeelle?
Vastaukset 2
- Delphiguru
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. - ...
Tai sitten voi käyttää SendMessagea:
http://www.cryer.co.uk/brian/delphi/howto_send_custom_window_message.htm
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 1231672
- 50970
Perhoseni (miehelle)
Miksi et usko, että mun rakkaus sinuun on aitoa ja vilpitöntä? Tai että se oli jo silloin? Miksi ajattelet, ettet ole r153816Myönnetään, tunnen lämpimiä tunteita kohtaasi
Vaikutat tosin liian hyvältä ollaksesi totta. Komeita miehiä on maailma pullollaan mutta sinussa on jotain.....50756- 70676
- 67626
- 53617
- 59596
Onko Sofia jälleen jätetty?
Moni asia viittaisi siihen, että hän on jälleen sinkku.129578Rekat seisovat dieselin hinnan takia . Ala ei kestä tällaista hintatasoa, sanoo yrittäjä .
EU:n kallein diesel on kova paikka kuljetusalalle. Ajoja on jätetty ajamatta kannattavuusongelmien vuoksi, sanoo alan e120544Mies, näetkö minut myös
Seksuaalisena ihmisenä ja naisena? Haluatko minua seksuaalisesti? Vai olenko mielestäsi tyttönen?20510- 5488
Voiko se ikinä toimia
Voiko meistä ikinä tulla mitään? Näin kauan aikaa on kulunut ja mitään ei tapahdu... En usko, että sinä mietit minua het32488- 34487
- 50482
- 55478
Nainen, mitä mieltä olet kodittomista?
Ja heistä jotka eivät kykene huolehtimaan asioistaan, itsestään eikä terveydestään? Miten heidän kanssaan tulisi toimia?118476Mitä jos...
Susta tykätään poikana enemmän, kun tyttönä? Miten asian käsittelet tai otat tiedon vastaan? T nainen gubetellija herät142453- 4439
Totta on asia. Jeffrey Cohen on jättänyt Sofian.
Vaimon viesti on paljastanut totuuden.137431