Hypercell ein ] Hypercell aus ] Zeige Navigation ] Verstecke Navigation ]
c++.de  
   

Die mobilen Seiten von c++.de:
http://m.c-plusplus.de
Infos hier [BETA]

  
c++.de :: FAQ - GUIs ::  [gtkmm] Schriftfarbe in Labels/Treeview möglich ?     Zeige alle Beiträge auf einer Seite Auf Beitrag antworten
Autor Nachricht
KasF
Mitglied

Benutzerprofil
Anmeldungsdatum: 14.12.2004
Beiträge: 2492
Beitrag KasF Mitglied 13:12:18 20.02.2006   Titel:   [gtkmm] Schriftfarbe in Labels/Treeview möglich ?            Zitieren

Hallo,

ist es möglich in einem Treeview oder in einem Label oder sonst wo anders in gtkmm die Schriftfarbe zu ändern, also nicht immer schwarz.

Würde in meinem Projekt nämlich gut aussehen :cool:
Ich habe nämlich noch nie ein gtkmm-Programm gesehen, wo ne andere Schriftfarbe ist ...

_________________
Um C++ zu beherrschen muss man schon for( ;; ) fragen ob er genug Zeit für einen hat ...
Werbeunterbrechung
icepacker
Mitglied

Benutzerprofil
Anmeldungsdatum: 27.09.2005
Beiträge: 241
Beitrag icepacker Mitglied 13:51:46 20.02.2006   Titel:              Zitieren

nee ich denke das geht nicht, weil das layout was das label hat, ist doch von
dem installierten theme abhänggig oder?

aber wenn es doch gehen sollte, dann steht das bestimmt in der ausgezeichneten doku *schleim*
evilissimo
Chefkoch

Benutzerprofil
Anmeldungsdatum: 12.11.2003
Beiträge: 2281
Beitrag evilissimo Chefkoch 09:43:10 22.02.2006   Titel:              Zitieren

Eventuell hast musst du mal schauen ob es via markup geht. ich bin da ehrlich gesagt auch überfragt. Ich hab das noch nie probiert :p

BR
evilissimo

_________________
evilissimo - R.I.P. dmr
< Moderator im C++/CLI Forum und im C++ Forum >
About Singletons: "Anyway, if our experts can make this mistake, you have made it and you don't even know about it."
KasF
Mitglied

Benutzerprofil
Anmeldungsdatum: 14.12.2004
Beiträge: 2492
Beitrag KasF Mitglied 21:48:36 22.02.2006   Titel:              Zitieren

Hi evilissimo,
danke für den Typ mit markup. Das hat mir dann den Weg zum Ziel gezeigt :live:
Ganz bin ich aber noch nicht angekommen :D

Hier erstmal nen Codeschnipsel:
C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
//mystyleWin.h
#ifndef _MYSTYLEWINDOW_
#define _MYSTYLEWINDOW_

#include <gtkmm.h>

 
class MyStyleWin : public Gtk::Window {
     
      private:
              Gtk::Label     label1;
              Gtk::TreeView  t_view;
             
              Gtk::VBox vbox;
              Glib::RefPtr<Gtk::ListStore> m_refTreeModel;
             
             
      public:
              MyStyleWin();
             
              class ModelColumns : public Gtk::TreeModel::ColumnRecord  {
                   
                    public:
                           ModelColumns() { add(m_team1); add(m_team2); }
                           
                           Gtk::TreeModelColumn<Glib::ustring> m_team1;
                           Gtk::TreeModelColumn<Glib::ustring> m_team2;
              } Columns;
             
             
};

#endif

 
//mystyleWin.cpp
#include "mystyleWin.h"
 
MyStyleWin::MyStyleWin() : label1("Hallo Farbe")
{
   
    //Darstellung modifizieren
    set_title("Style Test");
    vbox.set_border_width(15);
   
    //Farben modifizieren
    label1.modify_fg(label1.get_state(),Gdk::Color("red"));
    t_view.modify_text(t_view.get_state(),Gdk::Color("blue"));
   
    //Spaltentyp definieren
    m_refTreeModel = Gtk::ListStore::create(Columns);
    t_view.set_model(m_refTreeModel);
   
    //Spalten mit Zeilen füllen
    Gtk::TreeModel::Row row = *(m_refTreeModel->append());
    row[Columns.m_team1] = "Bayern Muenchen";
    row[Columns.m_team2] = "Schalke 04";
   
    row = *(m_refTreeModel->append());
    row[Columns.m_team1] = "1. FC Koeln";
    row[Columns.m_team2] = "VFB Stuttgart";
   
    //Spalten in Treeview tun
    t_view.append_column("Team 1", Columns.m_team1);
    t_view.append_column("Team 2", Columns.m_team2);
   
    vbox.pack_start(label1);
    vbox.pack_start(t_view);
   
    add(vbox);
    show_all_children();
}


Nun würde ich gerne in TreeView für die jeweiligen Spalten eine andere Farbe haben.
Leider krieg ich das nicht hin.

Ich könnte ja mehrere TreeViews nebeneinander tun und nachher es so versuchen, das man nicht sieht das das mehrere nebeneinander sind.
(möglich da den weißen Hintergrund zu verändern ???)

Oder könnte es doch eine Möglichkeit geben die einzelnen Spalten eine andere Farbe zu verpassen.

_________________
Um C++ zu beherrschen muss man schon for( ;; ) fragen ob er genug Zeit für einen hat ...


Zuletzt bearbeitet von KasF am 21:50:08 22.02.2006, insgesamt 1-mal bearbeitet
KasF
Mitglied

Benutzerprofil
Anmeldungsdatum: 14.12.2004
Beiträge: 2492
Beitrag KasF Mitglied 20:30:07 23.02.2006   Titel:              Zitieren

Freak_Coder schrieb:

Oder könnte es doch eine Möglichkeit geben die einzelnen Spalten eine andere Farbe zu verpassen.


Soo :live: Danke der gtkmm-Maillinglist das Problem auch gelöst...

C++:
1
2
3
4
5
6
7
8
9
    Gtk::TreeViewColumn* pColumn = t_view.get_column(0);
   
    if(pColumn)
    {
       //Schriftfarbe der Spalte setzen
       Gtk::CellRendererText* renderer = static_cast<Gtk::CellRendererText*>(pColumn->get_first_cell_renderer());
       renderer->property_foreground_gdk().set_value(Gdk::Color("green"));
       pColumn->add_attribute(renderer->property_visible(), Columns.m_team1);
   }


Das letzte Problem :D ist jetzt das ich gern um jede Zeile nen schönen schwarzen fetten Rand setzen würde und auch einen kleinen Abstand zwischen den Zeilen haben würde :cool:

_________________
Um C++ zu beherrschen muss man schon for( ;; ) fragen ob er genug Zeit für einen hat ...


Zuletzt bearbeitet von KasF am 20:32:46 23.02.2006, insgesamt 1-mal bearbeitet
GPC
Moderator

Benutzerprofil
Anmeldungsdatum: 11.07.2004
Beiträge: 6813
Beitrag GPC Moderator 16:27:15 25.02.2006   Titel:              Zitieren

bin ich der einzige, der findet dass dieser Thread in die FAQ gehört?

MfG

GPC

_________________
"We're rockstars, not lumberjacks" (Axl Rose about Grunge)
c++.de :: FAQ - GUIs ::  [gtkmm] Schriftfarbe in Labels/Treeview möglich ?   Auf Beitrag antworten

Zeige alle Beiträge auf einer Seite




Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können keine Beiträge in dieses Forum schreiben.
Sie können auf Beiträge in diesem Forum nicht antworten.
Sie können Ihre Beiträge in diesem Forum nicht bearbeiten.
Sie können Ihre Beiträge in diesem Forum nicht löschen.
Sie können an Umfragen in diesem Forum nicht mitmachen.

Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme

c++.de ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de Werbekostenerstattung verdient werden kann.

Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info und www.c-plusplus.net enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt (vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden. Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.