Qt Dokumentasjon Stillbilder.

QSignalMapper-klassen bunter signaler fra identifiserbare avsendere. Mer.

Offentlige funksjoner.

32 offentlige funksjoner arvet fra QObject.

Offentlige spor.

1 offentlig slot arvet fra QObject.

2 signaler arvet fra QObject.

Ekstra arvelige medlemmer.

1 eiendom arvet fra QObject 11 statiske offentlige medlemmer arvet fra QObject 9 beskyttede funksjoner arvet fra QObject.

Detaljert beskrivelse.

QSignalMapper-klassen bunter signaler fra identifiserbare avsendere.

Denne klassen samler et sett med parameterlose signaler, og sender dem igjen med heltall, streng eller widgetparametere som svarer til objektet som sendte signalet.

Klassen stotter kartlegging av bestemte strenger eller heltall med bestemte objekter ved hjelp av setMapping (). Objekternes signaler kan da kobles til kartet () -sporet som vil avgive det mapped () signalet med strengen eller heltallet som er knyttet til den opprinnelige signalobjektet. Mappings kan fjernes senere ved hjelp av removeMappings ().

Eksempel: Anta at vi vil lage en egendefinert widget som inneholder en gruppe knapper (som en verktoylett). En tiln rming er a koble hvert tastes klikket () signal til sitt eget tilpassede spor; men i dette eksemplet vil vi koble alle knappene til et enkelt spor og parameterisere sporet ved hjelp av knappen som ble klikket.

Her er definisjonen av en enkel tilpasset widget som har et enkelt signal, klikket (), som sendes ut med teksten til knappen som ble klikket:

Den eneste funksjonen som vi trenger a implementere er konstruktoren:

En liste over tekster sendes til konstruktoren. En signalmapper er konstruert og for hver tekst i listen opprettes en QPushButton. Vi knytter hvert tastes klikkte () -signal til signalmapperens kart () –spor, og lager en kartlegging i signalmappen fra hver knapp til knappens tekst. Til slutt kobler vi signalmapperens mapped () signal til den tilpassede widgetens klikkede () -signal. Nar brukeren klikker en knapp, vil den egendefinerte widgeten sende et enkeltklikket () signal hvis argument er teksten til knappen som brukeren klikket pa.

Medlemsfunksjon Dokumentasjon.

QSignalMapper :: QSignalMapper (QObject * foreldre = Q_NULLPTR)

Konstruerer et QSignalMapper med foreldreforelder.

QSignalMapper ::

[slot] void QSignalMapper :: map ()

Dette sporet sender signaler basert pa hvilket objekt som sender signaler til det.

[slot] void QSignalMapper :: kart (QObject * avsender)

Dette sporet sender signaler basert pa avsenderobjektet.

[signal] void QSignalMapper :: mapped (int i)

Dette signalet sendes ut nar kartet () signaliseres fra en objekt som har et heltallskartsett. Objektets kartlagte heltall passeres i i.

Merk: Signalkortet er overbelastet i denne klassen. For a koble til denne ved hjelp av funksjonspekersyntaxen ma du spesifisere signaltypen i en statisk cast, som vist i dette eksemplet:

[signal] void QSignalMapper :: mapped (const QString & text)

Dette signalet sendes ut nar kartet () signaliseres fra en gjenstand som har et strengkortsett. Objektets kartlagte streng sendes i tekst.

Merk: Signalkortet er overbelastet i denne klassen. For a koble til denne ved hjelp av funksjonspekersyntaxen ma du spesifisere signaltypen i en statisk cast, som vist i dette eksemplet:

[signal] void QSignalMapper :: mapped (QWidget * widget)

Dette signalet sendes ut nar kartet () signaliseres fra et objekt som har et widget-kartsett. Objektets kartlagte widget blir sendt i widget.

Merk: Signalkortet er overbelastet i denne klassen. For a koble til denne ved hjelp av funksjonspekersyntaxen ma du spesifisere signaltypen i en statisk cast, som vist i dette eksemplet:

[signal] void QSignalMapper :: mapped (QObject * objekt)

Dette signalet sendes ut nar kartet () signaliseres fra en objekt som har et objektkartingssett. Objektet som er oppgitt av kartet, sendes i objektet.

Merk: Signalkortet er overbelastet i denne klassen. For a koble til denne ved hjelp av funksjonspekersyntaxen ma du spesifisere signaltypen i en statisk cast, som vist i dette eksemplet:

QObject * QSignalMapper :: kartlegging (int id) const.

Returnerer avsenderen QObject som er knyttet til ID.

QObject * QSignalMapper :: kartlegging (const QString & id) const.

Denne funksjonen overbelaster kartlegging ().

QObject * QSignalMapper :: kartlegging (QWidget * widget) const.

Denne funksjonen overbelaster kartlegging ().

Returnerer avsenderen QObject som er knyttet til widgeten.

QObject * QSignalMapper :: kartlegging (QObject * objekt) const.

Denne funksjonen overbelaster kartlegging ().

Returnerer avsenderen QObject som er knyttet til objektet.

void QSignalMapper :: removeMappings (QObject * sender)

Fjerner alle mappings for avsender.

Dette gjores automatisk nar kartlagte objekter blir odelagt.

Merk: Dette kobler ikke fra noen signaler. Hvis avsenderen ikke er odelagt, ma dette gjores eksplisitt hvis det kreves.

void QSignalMapper :: setMapping (QObject * avsender, int id)

Legger til en kartlegging slik at nar kart () signaliseres fra den angitte avsenderen, sendes signalet kartlagt (id).

Det kan v re maksimalt ett heltall-ID for hver avsender.

void QSignalMapper :: setMapping (QObject * avsender, const QString & tekst)

Legger til en kartlegging slik at nar kart () signaliseres fra avsenderen, sendes signalet (tekst) ut.

Det kan v re hoyst en tekst for hver avsender.

void QSignalMapper :: setMapping (QObject * avsender, QWidget * widget)

Legger til en kartlegging slik at nar kart () signaliseres fra avsenderen, sendes signalet kartlagt (widget).

Det kan v re hoyst en widget for hver avsender.

void QSignalMapper :: setMapping (QObject * avsender, QObject * objekt)

Legger til en kartlegging slik at nar kart () signaliseres fra avsenderen, sendes signalet kartlagt (objekt).