Vis en melding på ønsket sted på skjermen. Utgangsbreddekontroll

Ethvert klientobjekt har en metode gi_spillnyheter. Den viser meldinger på skjermen. Eksperimentet avslørte at en melding kan skrives ut fra absolutt alle klientobjekter, selv fra en pølsebit (ros til designgeniet til GSC! Hvorfor ikke bare lage en global funksjon?). Men etter tradisjon og sunn fornuft vil vi fortsatt bruke en gjenstand tilsvarende GG til dette, dvs. skuespiller.

local sactor = alife() :aktør() --hent aktørserverobjektet lokal cactor = level.object_by_id(sactor.id) --ved å bruke ID-en får vi klientobjektet til skuespilleren cactor:give_game_news( "Frihet for jerboas!\\ nJerboas av alle land, foren deg!", -- meldingsstreng, kan være flerlinjet"ui \\ui_npc_monster", --tekstur som "avsender"-avataren er hentet fra Frect() :set(0 ,215 ,163 ,105 ) , --koordinater og dimensjoner til bildet kuttet fra teksturen math .random (1000 , 3000 ) , --begynn å vise meldingen fra det nåværende øyeblikket (i millisekunder) 5000 --varighet av meldingsvisning (i millisekunder) )

Legg til. kommentarer til argumenter gi_spillnyheter

Teksturnavnet er navnet på dds-filen uten utvidelse, adressert i forhold til mappen \spilldata\teksturer\ i dette uttrykket:

Frect() :set(0 ,215 ,163 ,105 )

0,215 - dette er koordinatene til øvre venstre hjørne av ønsket bilde;
163,105 - dens dimensjoner.
Dimensjonene og koordinatene kan være hvilke som helst, men det resulterende bildet vil bli forstørret eller redusert til 83x47. I dette tilfellet, jerboa-bildet fra filen ui_npc_monster.dds ble redusert. Displayets starttidsparameter er åpenbart nødvendig for å gi spillet litt livlighet. Faktum er at Lua-koden mottar kontroll bare i bestemte øyeblikk, i henhold til visse hendelser. I et slikt øyeblikk kan du generere en haug med meldinger og spre dem over tid ved å bruke denne parameteren, og dermed skape en slags etterligning av livsaktivitet i nær fremtid. Jeg tror man kan imitere dialog på samme måte. En haug med meldinger genereres ganske enkelt og utdata settes til dem med et kort intervall.

Bruksanvisning

Å trekke seg tilbake til skjerm beskjed, i Windows-operativsystemet er det nok å skrive et lite skript i Visual Basic. Lag en tekstfil script.txt. Navnet og plasseringen av filen spiller ingen rolle. Åpne filen i et hvilket som helst tekstredigeringsprogram. Skriv inn strengen: "MsgBox "meldingstekst"" (uten "sildbein", men med anførselstegn "bindestreker"). Lagre filen og lukk tekstredigeringsprogrammet. Endre filtypen til *.vbs. Ikonet skal endres. Nå oppfatter operativsystemet denne filen ikke som en tekstfil, men som et sett med kommandoer som utføres av Visual Basic-tolken innebygd i Windows. Denne komponenten er til stede i alle operativsystemer i denne familien, starter med XP, som lar deg kjøre skriptet på hvilken som helst datamaskin. Når det kjøres, vil dette skriptet sendes ut beskjed i vinduet. Teksten i anførselstegn kan være hva som helst.

Et alternativ til VBS-skript er å skrive Java-skript. Java-språket er mer komplekst, men et skript skrevet i det kan kjøres ikke bare på Windows-operativsystemer, men også på mange andre. Lag en tekstfil, åpne den i et redigeringsprogram og skriv inn linjen "WScript.Echo("meldingstekst");". Det er ikke nødvendig å legge inn eksterne anførselstegn, men hvis du ikke skriver inn interne anførselstegn (de som omslutter teksten), vil ikke scriptet fungere. Endre filtypen til *.js. Kjør filen for kjøring. Som et resultat vil et vindu vises, nøyaktig det samme som når du skriver et program i Visual Basic.

Det er en annen måte å sende ut meldinger på - ved å bruke net send-kommandoen. Fordelen og karakteristiske trekk ved denne metoden er at beskjed kan sendes til hvilken som helst datamaskin på det lokale nettverket. På tastaturet ditt trykker du på win+r-tastene samtidig, i vinduet som åpnes, skriv inn linjen cmd og trykk Enter. Et kommandovindu åpnes. I den skriver du "net send datamaskinnavn beskjed" (uten anførselstegn) og trykk Enter. Den angitte datamaskinen vises beskjed nesten det samme som om det ble gjort med et skript på den lokale maskinen. Vær oppmerksom på at den vil inkludere en returadresse. I stedet for navnet på meldingsmottakerens datamaskin, kan du angi en IP-adresse.

Det enkleste programmet er et program for å vise tekst på skjermen. I utgangspunktet blir de fleste studenter kjent med programmeringsspråk fra den. Det er ganske enkelt å skrive det selv; det viktigste er å forstå kompilatorgrensesnittet og det grunnleggende om programmeringsspråket.

Du vil trenge

  • - Qt-SDK.

Bruksanvisning

Last ned et hvilket som helst kompilatorprogram til datamaskinen din. Det er best å bruke kjente programmer, som for eksempel Nokia Qt SDK, siden den har det mest intuitive grensesnittet og vil være mer praktisk for nybegynnere. Last den ned fra den offisielle nettsiden og forveksle den under ingen omstendigheter med Qt-Creator Installer kompilatoren på datamaskinen din og kjør den.

Velg å lage et prosjekt kalt Hello World. For å gjøre dette, klikk på Opprett prosjekt i nedre høyre hjørne og velg applikasjonstypen i det nye vinduet som vises. I programmeringsspråk velger du C++. Skriv inn navnet helloworld i vinduet som vises. Deretter velger du enheten hvis programmet ikke utvikles for bruk på en personlig datamaskin.

Klikk Neste to ganger, velg ønsket konfigurasjon i det siste vinduet og klikk OK. Du vil se et arbeidsfelt, åpne editoren, velg main på venstre side av skjermen, skriv inn ordene QLabel label (Hello Everyboby) under #endif-linjen. Du kan bruke hvilken som helst setning du liker. Plasser en / på slutten av linjen.

Alle C++-programmene du opprettet i leksjon 1 og 2 brukte utdatastrømmen cout for å vise meldinger på skjermen. I denne opplæringen skal du bruke cout for å skrive ut tegn, heltall som 1001, og flyttall som 0,12345. Ved slutten av denne leksjonen vil du ha mestret følgende kjernekonsepter:

  • For å skrive ut tegn og tall til skjermen kan du bruke utdatastrømmen cout.
  • I C++ kan du bruke den med cout spesialtegn for tabulator- eller nylinjeutgang og til og med for å spille av lyd på datamaskinen.
  • I C++ kan du enkelt vise tall i desimal-, oktal- (grunntall 8) eller heksadesimalt (grunnlag 16) format.
  • Ved å bruke omdirigeringssetninger på operativsystemets kommandolinje, kan du omdirigere utdatameldingene til programmet som sendes til cout, fra skjerm til fil eller skriver.
  • Bruk av utgangsstrømmen cerr, programmene dine kan sende meldinger til standard feilenhet, noe som eliminerer behovet for brukere å omdirigere meldinger.
  • Du kan formatere programmets utdata ved å bruke modifikatoren settw inne i utgangsstrømmen.

Nesten hvert C++-program du lager bruker cout for å vise meldinger på skjermen. I denne opplæringen lærer du hvordan du bruker som/ bedre.

BRUK COut FOR UTGIFT NUMMER

Så langt har programmene du har laget brukt som/ til å skrive ut tegnstrenger(bokstaver og tall i anførselstegn). Nå vil du lære at som/ også kan brukes til å skrive ut tall. Følgende program, 1001.CPP, viser nummeret 1001 på skjermen:

#inkludere

Void main(void)

{
cout<< 1001;
}

Kompiler og kjør dette programmet. Nummeret 1001 vil vises på skjermen din som vist nedenfor:

C:\>1001

1001

Cout<< 2002;

I tillegg til visning heltall(tall uten et desimaltegn), lar som/også programmene dine vises flytende kommatall, for eksempel 1,2345. Følgende program FLOATING.CPP bruker som/ for å skrive ut nummeret 0,12345 til skjermen:

#inkludere

Void main(void)

{
cout<< 0.12345;
}

Som før, kompiler og kjør dette programmet. Følgende utgang vil vises på skjermen din:

C:\>FLYTENDE

0.12345

UTGIVER FLERE VERDIER SAMTIDIG

Som du allerede vet, er det doble mindre enn-tegnet sette inn operasjon(denne operasjonen setter inn tegn i utdatastrømmen for visning). Ved bruk av cout du kan bruke flere innsettingsoperasjoner i en enkelt setning. Følgende program, 1001TOO.CPP, bruker for eksempel denne operasjonen fire ganger for å vise tallet 1001 på skjermen:

#inkludere

Void main(void)

(
cout<< 1 << 0 << 0 << 1;
}

Når du kompilerer og kjører dette programmet, vil følgende vises på skjermen:

C:\>1001OG

1001

Hver gang en innsettingsoperasjon påtreffes i C++, legges tallet eller tegnene ganske enkelt til de som er i utdatastrømmen. Følgende program SHOW1001.CPP bruker cout skriver ut en tegnstreng og et tall:

#inkludere

Void main(void)

{
cout<< "Мое любимое число равно " << 1001;
}

Merk at mellomrommet etter ordet er lik(innenfor anførselstegn), tjener til å skille tallet 1001 fra dette ordet. Uten et mellomrom smelter tallet sammen med det neste ordet (lik 1001). På samme måte viser følgende program 1001MID.CPP tallet 1001 i midten av en tegnstreng:

#inkludere

Void main(void)

{
cout<< "Antall "<< 1001 << " мне очень нравится";
}

Som før, vær oppmerksom på plassering av mellomrom før og etter tallet 1001.

Til slutt kombinerer følgende MIXMATCH.CPP-program strenger, tegn, heltall og flyter innenfor samme utdatastrøm:

#inkludere

Void main(void)

{
cout<< "B " << 20 << " år lønnen min var "<< 493.34 << endl;
}

Når du kompilerer og kjører dette programmet, vil følgende utdata vises på skjermen:

C:\>MIXMATCH

Som 20-åring var lønnen min 493,34

BRUKE SPESIELLE UTGANGSTEGN

Alle programmene du har laget så langt har vist utdataene sine som en enkelt linje. Imidlertid vil de fleste programmer du oppretter senere vise flere utskriftslinjer. Anta for eksempel at du skriver et program som vil skrive ut adresser på skjermen. Du vil sannsynligvis at adressene skal vises som flere linjer.

Hvis du trenger å flytte markøren til begynnelsen av neste linje, kan du plassere nylinjekarakter(\n) til utdatastrømmen. I C++ får du to forskjellige måter å generere en ny linje på. Først kan du sette \n tegn i en tegnstreng. For eksempel viser følgende program TWOLINES.CPP utdataene sine som to linjer, ved å bruke nylinjetegnet:

#inkludere

Void main(void)
{
cout<< "Это строка один\nЭто строка два";
}

Når du kompilerer og kjører dette programmet, vil nylinjetegnet produsere to linjer med utdata, som vist nedenfor:

C:\>TOLINER

Dette er linje én

Dette er linje to

Hvis du ikke skriver ut en tegnstreng, kan du plassere et linjeskifttegn i enkle anførselstegn. For eksempel skriver følgende program NEWLINES.CPP ut tallene 1, 0, 0 og 1, hver på sin egen linje:

#inkludere

Void main(void)
{
cout<< 1 << "\n"<< 0 << "\n"<< 0 << "\n" << 1;
}

I tillegg til å bruke nylinjetegnet for å flytte markøren til begynnelsen av neste linje, kan programmene dine bruke tegnet endl(slutt på linjen). Følgende program ENDL.CPP illustrerer bruken endl for å flytte markøren til begynnelsen av en ny linje:

#inkludere

Void main(void)

{
cout<< "А теперь..." << endl
<< "Учимся программировать на языке C++";
}

Som før, når du kompilerer og kjører dette programmet, vil utdata fra programmet vises på skjermen i form av to linjer:

C:\>ENDL

Og nå

Lære å programmere i C++

Til slutt skriver følgende program ADDRESS.CPP ut adressen til utgiveren "Jamsa Press" på noen få linjer:

#inkludere

Void main(void)

{
cout<< "Jamsa Press" << endl;
cout<< "2975 South Rainbow, Suite I" << endl;
cout<< "Las Vegas, NV 89102" << endl;
}

Andre spesialtegn

I tillegg til nylinjetegnet, som lar programmene dine flytte markøren til begynnelsen av en ny linje, kan du bruke spesialtegnene som er oppført i tabellen. 3.1.

Tabell 3.1. Spesialtegn for bruk med cout.

Symbol

Hensikt

\EN

Signal (eller bjelle) symbol

\b

Retursymbol

Sidefeed-symbol

Nylinjekarakter

\G

Vognretur (ikke linjemating)

Horisontal tabulatortegn

Vertikalt tabulatortegn

Omvendt skråstrek

Spørsmålstegn

Enkelte sitater

Doble anførselstegn

Null karakter

\000

Oktal verdi, for eksempel \007

\xhhhh

Heksadesimal verdi, for eksempel \xFFFF

Kommentar: Når du bruker spesialtegnene oppført i tabellen. 3.1, bør du plassere dem i enkle anførselstegn hvis du bruker disse tegnene alene, for eksempel "\n", eller i doble anførselstegn hvis du bruker dem i en streng, for eksempel "Hei\nMup!".

Følgende program, SPECIAL.CPP, bruker spesialsignaltegnene (\a) og tab (\t) for å sende ut lyd til datamaskinens innebygde høyttaler og skriver deretter ut ordene Ring Ring Ring atskilt med fane:

#inkludere

Void main(void)

{
cout<< "3вонок\a\tЗвонок\a\tЗвонок\a";
}

OUTPUT OKTALE OG HEKSADESIMALE VERDIER

Programmene som er presentert i denne leksjonen så langt har utdatatall i desimalform. Avhengig av formålet med programmene dine, må du kanskje skrive ut tall i oktal eller heksadesimal. For å gjøre dette kan du plassere modifikatorer desember, okt Og hex inne i utgangsstrømmen. Følgende program OSTNEX.CPP bruker disse modifikatorene til å gi ut verdier i desimal, oktal og heksadesimal:

#inkludere

Void main(void)

{
cout<< "Восьмеричный: " << oct << 10 << " " << 20 << endl;
cout<< "Шестнадцатеричный: " << hex << 10 << " " << 20 << endl;
cout<< "Десятичный: " << dec << 10 << " " << 20 << endl;
}

Når du kompilerer og kjører dette programmet, vil følgende utdata vises på skjermen:

C:\>OKTEX

Oktal: 12 24

Heksadesimal: a 14

Desimal: 10 20

Merk: Når du bruker en av modifikatorene til å velge oktal, heksadesimal eller desimal utgang, vil valget ditt forbli gjeldende til programmet avsluttes eller du bruker en annen modifikator.

UTSKRIFTSFEIL TIL EN STANDARDENHET

Som du allerede vet, bruker cout, Du kan omdirigere et programs utdata til en enhet eller fil ved å bruke operativsystemets utdataomdirigeringsoperatører. Men hvis programmene dine møter feil, vil du sannsynligvis ikke at feilmeldingen skal omdirigeres fra skjermen. Å omdirigere feilmeldinger til en fil kan skjule det faktum at en feil oppsto fra brukeren.

Hvis programmet ditt trenger å skrive ut en feilmelding, bør du bruke utdatastrømmen cerr. C++-lenker cerr med standard operativsystemfeilenhet. Følgende program CERR.CPP bruker utdatastrømmen cerr for å vise en melding på skjermen "Denne meldingen vises alltid":

#inkludere

Void main(void)

{
cerr<< "Это сообщение появляется всегда";
}

Kompiler og kjør dette programmet. Prøv deretter å omdirigere programmets utdata til en fil ved å bruke utdataomdirigeringsoperatøren:

C:\>CERR>FILENAME.EXT

Fordi operativsystemet ikke vil tillate at programmene dine omdirigerer utdata som er skrevet til standard feilenhet, vil en melding vises på skjermen.

KONTROLL AV UTGANGSBREDDE

Flere tidligere programmer viste tall på skjermen. For å sikre at disse tallene ble vist riktig (med riktig mellomrom), inkluderte programmene mellomrom før og etter tallene. Når du trekker deg til cout eller cerr programmene dine kan spesifisere utgangsbredden til hvert tall ved hjelp av en modifikator settw(innstilling av bredden). Ved bruk av settw programmer spesifiserer minimum antall tegn et tall kan ta opp. For eksempel bruker følgende program SETW.CPP modifikatoren settw for å velge breddene 3, 4, 5 og 6 for tallet 1001. For å bruke modifikatoren settw, programmet ditt må inneholde en overskriftsfil iomanip.h:

#inkludere

#inkludere

Ugyldig hoved (ugyldig)

{
cout<< "Мое любимое число равно" << setw(3) << 1001 << endl;
cout<< "Мое любимое число равно" << setw(4) << 1001 << endl;
cout<< "Мое любимое число равно" << setw(5) << 1001 << endl;
cout<< "Мое любимое число равно" << setw(6) << 1001 << endl;
}

Når du kompilerer og kjører dette programmet, vil følgende utdata vises på skjermen:

C:\>SETW

Mitt favorittnummer er 1001

Mitt favorittnummer er 1001

Hvis du angir bredden ved hjelp av settw, du angir minimum antall tegnplasseringer som er okkupert av et tall. I forrige program endret settw(3) spesifisert minst tre tegn. Men siden tallet 1001 krevde mer enn tre tegn, cout brukte den faktisk nødvendige mengden, som i dette tilfellet var fire. Det skal bemerkes at ved bruk settw for å velge bredden, er den spesifiserte bredden gyldig for å skrive ut bare ett tall. Hvis du trenger å spesifisere bredden for flere tall, bør du bruke settw gjentatte ganger.

Kommentar: Det forrige programmet bruker overskriftsfilen IOMANIP.H. Du må kanskje skrive ut og undersøke innholdet i denne filen nå. Som med IOSTREAM.H-headerfilen, vil du finne denne filen i INCLUDE-underkatalogen til kompilatorfilkatalogen.

HVA DU TRENGER Å VITE

I denne opplæringen lærte du flere måter å bruke cout for å vise utdataene på skjermen. Alle programmer du lager gjennom resten av denne boken vil bruke cout for å vise utgangen. I leksjon 4 lærer du hvordan du bruker variabler i programmene dine for å lagre verdier som kan endres etter hvert som programmet kjører. Men før du studerer leksjon 4, sørg for at du har mestret følgende grunnleggende konsepter:

    1. Utgangsstrøm cout lar deg skrive ut tegn og tall.
    2. Ved å bruke spesialtegn i utdatastrømmen kan programmet ditt indikere ny linje, tabulator og andre spesialfunksjoner.
    3. For å flytte markøren til begynnelsen av neste linje, kan programmer lage en ny linje ved å bruke tegnet \n eller modifikatoren endl.
    4. Modifikatorer des, okt Og hex Tillat programmer å skrive ut verdier i desimal, oktal og heksadesimal.
    5. Bruk av utgangsstrømmen cerr, programmer kan skrive meldinger til operativsystemets standard feilenhet.
    6. Bruke en modifikator settw programmene dine kan kontrollere bredden på tallutgangen.