Kirjoittaja Aihe: Qt ja QTableWidget:in signaalit [ratkaistu]  (Luettu 1670 kertaa)

teele

  • Käyttäjä
  • Viestejä: 818
    • Profiili
Qt ja QTableWidget:in signaalit [ratkaistu]
« : 31.07.10 - klo:21.45 »
En tiedä onko tämä oikea paikka, mutta olisi mukava tietää, onko kukaan saanut QTableWidgetistä yhtään cellClicked(int row, int column) -tyyppistä signaalia toimimaan. Siis taulukkowidgetin cell-alkuisista signaaleista olisi kyse, ja niiden pitäisi toimia rivi- ja sarakenumeroilla.

Kokeilin Qt:n mukana tulevalla spreadsheet-esimerkillä lisäämällä siihen

void SpreadSheet::detectDoubleClick(int row, int column) // tämä ei toimi
{ formulaInput->setText("valittu");
}

ja yhdistämällä sen

connect(table, SIGNAL(   cellDoubleClicked( int row, int column )),
            this, SLOT(detectRowSelection(int row, int column)) );

(Jos tämä ei ole sopiva paikka qt-keskusteluun, otan mielelläni vastaan vihjeitä hyvistä vaihtoehdoista.)

teele
« Viimeksi muokattu: 01.08.10 - klo:10.11 kirjoittanut teele »

timbba

  • Käyttäjä
  • Viestejä: 1413
    • Profiili
Vs: Qt ja QTableWidget:in signaalit
« Vastaus #1 : 01.08.10 - klo:07.25 »

En tiedä onko tämä oikea paikka, mutta olisi mukava tietää, onko kukaan saanut QTableWidgetistä yhtään cellClicked(int row, int column) -tyyppistä signaalia toimimaan. Siis taulukkowidgetin cell-alkuisista signaaleista olisi kyse, ja niiden pitäisi toimia rivi- ja sarakenumeroilla.

Kokeilin Qt:n mukana tulevalla spreadsheet-esimerkillä lisäämällä siihen

void SpreadSheet::detectDoubleClick(int row, int column) // tämä ei toimi
{ formulaInput->setText("valittu");
}

ja yhdistämällä sen

connect(table, SIGNAL(   cellDoubleClicked( int row, int column )),
            this, SLOT(detectRowSelection(int row, int column)) );

(Jos tämä ei ole sopiva paikka qt-keskusteluun, otan mielelläni vastaan vihjeitä hyvistä vaihtoehdoista.)

teele

connectissa on väärä slot.

teele

  • Käyttäjä
  • Viestejä: 818
    • Profiili
Vs: Qt ja QTableWidget:in signaalit
« Vastaus #2 : 01.08.10 - klo:10.20 »
Kiitos, niin oli ja sitten oli toinenkin virhe:

connectissa ei saa olla parametrien nimiä, vain tyypit

connect(table, SIGNAL(   cellDoubleClicked( int, int  )),
            this, SLOT(detectDoubleClick(int, int )) );

Yksi pikku lisäpulma on vielä tullut eteen. Jos kirjoitan QLineEditin setTextillä vaikka "näytä", ääkköset näkyvät väärin, Ongelma on siis siinä, että lähdetekstin kirjaimet eivät näy oikein ohjelmassa, vaikka ohjelman syöttökenttään voikin kirjoitella myös ääkkösiä. Lähdeteksti on utf-8.

Muok.  Ratkaisu edelliseen on trUtf8("ääkkösteksti") tr:n tai tavallisen merkkijonon tilalle.

teele
« Viimeksi muokattu: 01.08.10 - klo:12.14 kirjoittanut teele »

_Pete_

  • Käyttäjä
  • Viestejä: 1836
  • Fufufuuffuuu
    • Profiili
Vs: Qt ja QTableWidget:in signaalit [ratkaistu]
« Vastaus #3 : 01.08.10 - klo:10.34 »

(Jos tämä ei ole sopiva paikka qt-keskusteluun, otan mielelläni vastaan vihjeitä hyvistä vaihtoehdoista.)


Sopiva on tämäkin mutta tässä pari varsinaista ohjelmointii keskittynyttä suomalaista foorumia:

http://www.ohjelmointiputka.net/
http://mureakuha.com/

Qt ongelmiin varmasti hyvä myös forum.nokia ...