Parametrar till funktionslotar QT c++

Här diskuteras programmering och utveckling
Användarvisningsbild
Luxwarp
Inlägg: 591
Blev medlem: 16 nov 2007, 02:05
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Göteborg
Kontakt:

Parametrar till funktionslotar QT c++

Inlägg av Luxwarp »

Hej, jag håller på med en miniräknare i QT c++.

Nu tänkte jag att knapparna 0-9 skall få använda samma funktion för att skriva ut siffran i textfältet.

Typ så här tänkte jag

void calculator::add_character(QString character)
{
QString old = input->text();
input->setText(old + character);
}

detta gör att när jag connectar så här

connect(one,SIGNAL(clicked()),this,SLOT(add_character(1)));

så vill jag att 1 (ettan), skall skickas med och användas i funktionen, men så fort jag kompilerar och kör så får jag error om att add_character(1) inte finns.

Någon som vet om något speciellt behövs för att få skicka med paramterar till slotar m.m.
--------------------------------------
Luxwarp (fd. Zifilion / MMCarlsson)

IT Consultant and Web developer.

Check out my blog about Ubuntu, development, tips, tech and all my projects over at https://codeiolo.org
gusnan
Inlägg: 348
Blev medlem: 17 jan 2007, 08:20
OS: Debian
Utgåva: Vet inte/ingen utgåva passar

Re: Parametrar till funktionslotar QT c++

Inlägg av gusnan »

Är det när du kompilerar eller när du kör programmet som du får fel?

Var är det som connect-raden finns? - Om den finns i någonstans i calculator-klassen så skall det ju funka, annars får måste du ju ta med calculator-objektet i connect-raden för att kompilatorn skall se den.
Användarvisningsbild
Luxwarp
Inlägg: 591
Blev medlem: 16 nov 2007, 02:05
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Göteborg
Kontakt:

Re: Parametrar till funktionslotar QT c++

Inlägg av Luxwarp »

cowboy skrev:Är det när du kompilerar eller när du kör programmet som du får fel?

Var är det som connect-raden finns? - Om den finns i någonstans i calculator-klassen så skall det ju funka, annars får måste du ju ta med calculator-objektet i connect-raden för att kompilatorn skall se den.
connectraderna finns i calculator.cpp filen i calculatorklassens constructor där knapparna skrivsut.

asså den säger att

Starting /Grejor/Programmering/qt/Calculator/Calculator...
Object::connect: No such slot calculator::add_character(1) in calculator.cpp:48

och det är när jag kompilerar ja
--------------------------------------
Luxwarp (fd. Zifilion / MMCarlsson)

IT Consultant and Web developer.

Check out my blog about Ubuntu, development, tips, tech and all my projects over at https://codeiolo.org
Användarvisningsbild
mcNisse
Inlägg: 5211
Blev medlem: 06 feb 2007, 20:51
OS: Debian
Utgåva: Vet inte/ingen utgåva passar

Re: Parametrar till funktionslotar QT c++

Inlägg av mcNisse »

jag vet inte om du kan skicka egna parametrar med hjälp av connect, men du kan testa att skicka "1" istället för 1.
Användarvisningsbild
Luxwarp
Inlägg: 591
Blev medlem: 16 nov 2007, 02:05
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Göteborg
Kontakt:

Re: Parametrar till funktionslotar QT c++

Inlägg av Luxwarp »

mcNisse skrev:jag vet inte om du kan skicka egna parametrar med hjälp av connect, men du kan testa att skicka "1" istället för 1.

Redan försökt, men kommit fram till att man bara kan skicka datatyper. och smidigast är att använda buttongroup
--------------------------------------
Luxwarp (fd. Zifilion / MMCarlsson)

IT Consultant and Web developer.

Check out my blog about Ubuntu, development, tips, tech and all my projects over at https://codeiolo.org
Användarvisningsbild
mcNisse
Inlägg: 5211
Blev medlem: 06 feb 2007, 20:51
OS: Debian
Utgåva: Vet inte/ingen utgåva passar

Re: Parametrar till funktionslotar QT c++

Inlägg av mcNisse »

Om jag inte minns fel så är det funktionen som ska deklareras inte ärgument som ska skickas. Du får väl skriva 10 slots. En för varje knapp...
Användarvisningsbild
Luxwarp
Inlägg: 591
Blev medlem: 16 nov 2007, 02:05
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Göteborg
Kontakt:

Re: Parametrar till funktionslotar QT c++

Inlägg av Luxwarp »

mcNisse skrev:Om jag inte minns fel så är det funktionen som ska deklareras inte ärgument som ska skickas. Du får väl skriva 10 slots. En för varje knapp...
Jo det har jag gjort sålänge, tyckte bara att det var väldigt onödigt när dom gör samma sak förutom en liten bokstav:P
--------------------------------------
Luxwarp (fd. Zifilion / MMCarlsson)

IT Consultant and Web developer.

Check out my blog about Ubuntu, development, tips, tech and all my projects over at https://codeiolo.org
Skriv svar

Återgå till "Programmering och webbdesign"