QTREEWIDGET problem z tekstemm

QTREEWIDGET problem z tekstemm
S1
  • Rejestracja:ponad 8 lat
  • Ostatnio:ponad 3 lata
  • Postów:6
0

Mam mianowicie taki problem. Utworzyłem sobie proste drzewko (lub coś w ten deseń) z pomocą dla mojego programu.
I tutaj pytanie, jak mogę dodać tekst do np. pierwszego okienka "Pierwsza pomoc\nprogramu enap"?zdje.jpg

AL
pokaż jakieś MRE albo dopracuj pytanie. Chcesz wziąć pierwszy element listy i go wyświetlić czy co dokładnie?
S1
  • Rejestracja:ponad 8 lat
  • Ostatnio:ponad 3 lata
  • Postów:6
0

To jest mój działający program (zdjęcie w załączniku) i gdy kliknę odnośnik "pierwsza pomoc" to chciałbym dodać jakiś tekst (aby mi się coś wyświetliło z zakładce).
1.jpg

  • 1.jpg (167 KB) - ściągnięć: 10
RE
  • Rejestracja:ponad 18 lat
  • Ostatnio:około 10 godzin
2

w sensie z prawej strony?

To połącz sygnał i slot np.
https://doc.qt.io/qt-5/qtreewidget.html#itemClicked

czyli trrwidget łączysz z widgetem z boku i np. nie wiem ustawiasz tam jakiś tekst w labelce czy text area.


We are the 4p. Existence, as you know it, is over. We will add your biological and technological distinctiveness to our own. Resistance is futile
MarekR22
Moderator C/C++
  • Rejestracja:około 17 lat
  • Ostatnio:około 2 godziny
2

Napisz wyraźnie co się ma dziać, na razie revcorey wykazał się ograniczoną formą telepatii, ale to nie jest forum dla parapsychologów, więc potrzebne są solidne konkrety.

Co rozumiesz przez "dodać tekst"?
W pierwszym czytaniu zrozumiałem, że tekst ma być dodany do tytułu element drzewa.

Projekt wygląda na duży, a biorąc pod uwagę rodzaj problemu (i sposób jego opisu), jesteś początkujący, ergo modyfikujesz cudzy kod.
Najlepiej zacznij od dodania linka do tego projektu, (github/gitlab/bitbucket)?


Jeśli chcesz pomocy, NIE pisz na priva, ale zadaj dobre pytanie na forum.
edytowany 2x, ostatnio: MarekR22
S1
  • Rejestracja:ponad 8 lat
  • Ostatnio:ponad 3 lata
  • Postów:6
0

@MarekR22: Najprościej rzecz ujmując, chcę dodać jakiś text widget, aby był wyświetlony dla prawej strony programu "pierwsza pomoc" . Nie wiem jak mam je połączyć.

RE
  • Rejestracja:ponad 18 lat
  • Ostatnio:około 10 godzin
3
  1. Z lewej strony masz widget. Jak napisałem wyżej(wraz z linkiem) na kliknięcie masz sygnał, łączysz go do slotu klasy gdzie jest text area.
    https://doc.qt.io/qt-5/signalsandslots.html
  2. W prawym widget(w klasie w której trzymasz pole tekstowe) w jakimś layout albo i bez znajduje się jakieś pole tekstowe text area czy label https://doc.qt.io/qt-5/layout.html
  3. Klasa w której jest to pole powinna mieć slot który zareaguje na sygnał z treewidget po czym ustawi żądany tekst(np. slot otworzy plik i wczyta do pola tekstowego dane).
    np.
    https://doc.qt.io/qt-5/qtextedit.html

na stronach qt masz przykłady ktróe ci to wyjaśnią
https://doc.qt.io/qt-5/qtexamplesandtutorials.html


We are the 4p. Existence, as you know it, is over. We will add your biological and technological distinctiveness to our own. Resistance is futile
MarekR22
Moderator C/C++
  • Rejestracja:około 17 lat
  • Ostatnio:około 2 godziny
6

Im więcej patrzę na te screenshoty tym bardziej jestem przekonany, że ty nie masz pojęcia co robisz.
Lepiej byłoby jakbyś otworzył książkę z podstawami C++ i rozwiązywał proste zadania.
Potem poćwiczyć na prostych programikach w Qt, a dopiero po tym poprawiać cudze aplikacje.

Największe kwiatki jaki widzę:

  • zupełny brak formatowania kodu, chaotyczne wcięcia bez ładu i składu
  • static_cast<QThreeWidget>(0) WAT?
  • Zamiast QStringList(QString( zapewne wystarczy: tr(
  • kod jako obrazek jest nie do przyjęcia

Jeśli chcesz pomocy, NIE pisz na priva, ale zadaj dobre pytanie na forum.
edytowany 2x, ostatnio: MarekR22
ZK
  • Rejestracja:około 19 lat
  • Ostatnio:3 miesiące
0

@MarekR22:

Im więcej patrzę na te screenshoty tym bardziej jestem przekonany, że ty nie masz pojęcia co robisz.
Lepiej byłoby jakbyś otworzył książkę z podstawami C++ i rozwiązywał proste zadania.

Wszyscy radzą "wróć do podstaw" ale ta "rada" to nie rada, najlepszą pomocą jest pokazanie na przykładzie co robi się źle. Już takich "złotych rad" otrzymałem od was wiele i nic z nich nie wynika czyli podsumowując te "rady" są złe, więc jeżeli są złe to czemu je powielacie ?

Aby człowiek posuwał się do przodu, najlepiej pokazać mu gdzie robi błąd, pokazać przykład i zaproponować rozwiązanie problemu najlepiej na przykładzie (tak, wiem, według was dużo wymagam i przerasta to wasze pojmowanie otaczającej was rzeczywistości) - większość waszych "rad" to rozmienianie się na drobne z których nic nie wynika, bo i tak człowiek zostaje sam z problemem

Często i gęsto w samym Qt sposób myślenia jest inny od pisania aplikacji konsolowych do aplikacji okienkowych - już samo wejście w programowanie obiektowe w Qt zmienia sposób myślenia o 180 stopni - moim zdaniem żeby dobrze pisać w Qt tak czy inaczej trzeba POZNAĆ tą bibliotekę i nauczyć się jej używać, innej drogi nie ma bo z samej znajomości czystego C++ nic nie wynika.

Bo z waszej strony wygląda to tak, jakby mechanik mógłby być już inżynierem, bo zna podstawy budowy samochodu, to że zna to co z tego ? Jak nie umie liczyć wytrzymałości na zginanie/skręcanie, nie zna materiałów i ich właściwości etc... (w zależności od specjalności inżynierskiej) - więc chcąc być inżynierem, trzeba sięgnąć już po zupełnie inny zestaw zagadnień naukowych.

Ta sama analogia jest w programowaniu - jak ktoś zna czyste C++ i nie chce być już mechanikiem (czyste C++), tylko inżynierem (budować aplikacje okienkowe np w Qt/GTK/WinAPI), to musi sięgnąć po inny zestaw zagadnień i nauczyć się używać tych narzędzi, tak samo jak inżynier musi ogarnąć np taką matematykę, fizykę, caitę, matlaba, materiałoznawstwo itp...

  1. Czyste C++ daje możliwość pisania wydajnych algorytmów + takie biblioteki jak Qt (bo w sumie Qt powstało z czystego C/C++)
  2. Qt to już gotowe klocki które trzeba nauczyć się składać w jeden dobrze działający program + w tym programie często zachodzi potrzeba napisania algorytmu napisanego w czystym C++

To jest moje zdanie ale wiem, że wy i tak będziecie mieli swoje odmienne zdanie ale zasadnicze pytanie jest takie czy rzeczywiście macie rację ? Bo na proces nauki trzeba umieć spojrzeć z kilku różnych stron, a nie tylko z jednej "jedynej słusznej"


bla
edytowany 1x, ostatnio: zkubinski
Zobacz pozostałe 2 komentarze
AK
Rozumiem, taki jest kontekst posta, znacz "czyste i wydajne C++" i tylko złośliwość radzących w/s Qt jest problemem ?
ZK
@AnyKtokolwiek: ja mówię na podstawie własnych doświadczeń wyniesionych z tego forum, nie czepiam się tego posta, mimo iż doskonale rozumiem z czym autor ma problem, mimo iż napisał to tak nieskładnie, nawet byłbym w stanie mu powiedzieć jak ma napisać funkcję wyświetlającą zawartość po prawej stronie okna...
ZK
@AnyKtokolwiek: co do "radzących" złośliwość radzących w/s Qt jest problemem - gość napisał to tak, że ciężko wywnioskować o co mu chodzi, ale już samo patrzenie na zrzuty już wiadomo z czym ma problem i na tej podstawie inteligentny człowiek dałby merytoryczną odpowiedź i nie rozmieniałby się na drobne w waszym stylu "napisz jaśniej" serio
MarekR22
Uważasz, że da się odpowiedzieć lepiej? No to droga wolna, palce na klawiaturę i daj przykład, że potrafisz lepiej niż to co napisał recovery. Uważasz, że z mojej "złotej rady" nic nie wynika, no to przeczytaj co tu napisałeś i powiedz mi jak na tym spnik12 skorzysta.
MarekR22
Co do twojego przykładu jak ktoś nie umie korzystać ze śrubokręta to jeszcze nie jest inżynierem, a bez tego naprawiając auto narobi więcej szkód niż pożytku.
ZK
  • Rejestracja:około 19 lat
  • Ostatnio:3 miesiące
0

@spnik12:
Czy możesz umieścić cały kod tego programu ?


bla
edytowany 1x, ostatnio: zkubinski
AL
  • Rejestracja:prawie 11 lat
  • Ostatnio:około 3 lata
  • Postów:1493
1

Dobra, po screenach domyślam się co to za soft. Obawiam się tylko, że bez przygotowania jakiegoś przykładu (okrojonego z firmowego IP) raczej nikt Ci tu w stanie pomóc nie będzie. Powtórzę się: przygotuj dobry przykład.

Zobacz pozostałe 22 komentarze
ZK
@_13th_Dragon: ty chyba jesteś jakiś nierozumny - więc jeżeli coś wiesz, to zamiast klepać 3 po 3 wrzuć coś działającego, ja przynajmniej pracuję nad przykładem dla niego, a ty ? Coś próbujesz udowodnić i nie wiem co...
RE
najzabawniejsze jest to że spinki zaakceptował moją odpowiedź gdzie podałem linki do przykładów, opisy mechanizmów itd. Twoja pomoc na razie równa się zero. Bardzo dużo gadasz i to wszystko.
ZK
@revcorey: podobnie jak ty - nie widzę różnicy między nami
RE
xD jak widać autorowi moja pomoc wystarczyła skoro odpowiedź zaakceptował. Widać jest to ktoś komu dasz wędkę to rybę złowi. Także chyba przegrywasz w tym zestawieniu. Idź marudzić gdzie indziej bo to męczące. Po prostu chyba narasta w tobie frustracja że nigdy do IT się nie dostaniesz a my już jesteśmy i cię to boli. EOT.
_13th_Dragon
Autor tematu widzi różnice zaś @zkubinski nie widzi! Oczywiście opinia zkubinskiego zawsze obiektywna :p
ZK
  • Rejestracja:około 19 lat
  • Ostatnio:3 miesiące
0

zrobiłem przykład QTreeWidget

kodu nie wrzucam, bo nie ma sensu z wami konstruktywna krytyka z tego względu, że nie zachowujecie się jak profesjonaliści tylko jak małe podwórkowe zarozumialce, które sądzą, że posiadły "nadzwyczajną" wiedzę

moje umiejętności są jakie są, a wynikają one tylko i wyłącznie z tego, że nie studiowałem programowania i nikt mi niczego paluchem nie pokazywał

popatrzcie sobie na obrazki i tylko tym się zadowólcie

screen 1
screenshot-20210622194558.png

screen 2
screenshot-20210622194640.png

screen 3
screenshot-20210622194711.png

BTW - robiłem to pierwszy raz... i jestem zadowolony z osiągnięć


bla
RE
zastanawiałem się czy coś pisać ale może i napiszę coś odnośnie tego palucha. Chyba ogólnie nie studiowałeś skoro mówisz ludziom że coś umieją bo im na studiach paluchem pokazali(z resztą my też ci paluchem pokazywaliśmy nie pomogło. PS. Nie studiowałem informatyki xD Moja rada dla ciebie ostatnia, zamilknij na wieki. Za rok czy dwa jak spojrzysz na te swoje "posty" to będziesz czuł wstyd. Daruj sobie. "popatrzcie sobie na obrazki i tylko tym się zadowólcie". Nic nas to nie obchodzi na codzień mamy styczność z dużymi projektami a nie wypocinami z qtdesignera na 100 lini.
enedil
W sensie, że na studiach pokazują paluchem, a ty być chciał trochę tego palucha na forum?
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)