GTK에서 GtkCList 에 Pixmap 관련 질문입니다.

freedom의 이미지

안녕하세요. 새해부터 코딩만 하느라 죽겠습니다..ㅠㅠ 다름이 아니라

제가 clist 에

gtk_clist_append 로 row를 추가 하고 (첫번째 column은 pixmap을 넣을꺼기 때문에 "" 식으로 추가)

gtk_clist_set_pixmap() 를 통해서 pixmap 을 넣었습니다.( 첫번째 column 은 pixmap, 두번째는 Text)그리고

gtk_clist_clear ((GtkCList*)clist) 로 row 를 다 지웠는데 그다음

같은 방법으로 row를 추가했더니, text는 들어가는데 pixmap은 안보입니다..

pixmap 생성은

pixmap_folder = gdk_pixmap_create_from_xpm(window1->window,&mask,NULL,"../pixmaps/gnome-folder.xpm");

와 같은 식으로

window1 은 메인 윈도우 생성하고 그걸 가리키는 GtkWidget* 이고,
mask는 GdkBitmap* mask;

입니다..

2틀 동안 힘들게 해서 했는데 참 머가 잘못된건지..'';;

첨부 그림은 위에꺼는 안보일때

밑에꺼는 보일때 (처음 row 추가시)

선배님들의 답변 부탁드립니다..ㅜㅜ

File attachments: 
첨부파일 크기
Image icon pixmap.JPG4.91 KB
iolo의 이미지

소스도 없이.. 답변이 나오겠습니까...-.-;;;

아.. 질문과는 상관없지만 스크린샷을 보니 gtk2인것 같은데...
gtk_clist는 특별한 이유가 없다면 쓰지 않는 것이 좋습니다.
deprecated입니다. gtk_tree_view를 쓰시길...=3=333

----
the smile has left your eyes...

----
the smile has left your eyes...

freedom의 이미지

아..네 제가 실수를 했네요.
근데 list에 PIXMAP 넣는걸 CList에서 밖에 못찾아서 지금은 CList 쓰고 있습니다.

지금은 문제를 어느정도 해결했습니다. 다행이도..^^;;

다음부터 질문을 할때는 iolo 님 말씀대로 소스도 올리고 하겠습니다.

좋은 조언 감사합니다. 새해 복 많이 받으세요..^^

candinate의 이미지

보아하니 회사일을 하느라 새해부터 코딩한답시고 하시는거 같습니다만...

회사일이면 돈을 받고 하는 업인데..

어찌 프로페셔널답지 않게 선배님들의 답변을 부탁드립니다?? 란 아마추어같은 질문을 하시는지요??

프로면 프로답게 스스로 헤쳐나가십시오.......

keizie의 이미지

프로든 아마든 처음부터 다 아는 것도 아니고, 어찌 안 물어보고 하겠습니까?
게다가 gtk+ 쪽 문서가 워낙 예전 것도 많이 돌아다니고 해서 물어보면서 하는 게 나을 겁니다.

saxboy의 이미지

그래도 리포트낼 숙제를 여기에 ctrl+C & V 해서 올린 글보다는 훨씬 낫지 않나요. :-)

hangaroy의 이미지

GtkTreeView를 사용하시면 원하는 바를 이루실 수 있으며
말씀하시는 기능들이 대부분 Deprecated되고 GtkTreeView로 통합되었습니다.
현재 진행형이다보니 자료도 훨씬 많습니다.

사용법은 www.gtk.orgwww.gnome.org에서 찾아보면 될 것입니다.

www.gnome.org에서 Tutorial에 보면 GTK+ 2.0 Tree View Tutorial이 있습니다.
이것이 개념을 이해하고 Tree View에 관련된 각 구성요소나 역할, 관계등을 배우는데 좋습니다.
주소는 http://scentric.net/tutorial/ 여기 이구요.

그리고 나서 상세히 구현하실때는 API를 보십시요.

기본구조만 알고 나면 Tree View는 조금도 어렵지도 복잡하지도 않습니다.
굉장히 간단하고 명료합니다.

그냥 GtkCList를 쓰시겠다면 달리 드릴 말씀은 없으나 좋지 않은 방법인거 같습니다.

감히 한말씀 드리자면
말씀하신것처럼 처음부터 다아는 사람은 없습니다만 처음부터 찾아보는 사람은 많습니다.

저역시 GTK를 업으로 삼았었던적엔 물어볼곳이 마땅치않아 개발자 문서를 보고 배우며 문제를 해결하였습니다.
GTK에서 공식스러운 자료들만 보아도 대부분 스스로 익히고 해결할 수 있습니다.

모든답이 개발자 문서에 있으며 그래도 만만치 않을때는 Google에 관련단어나 함수 몇개만 넣어보면
비슷한 질답이나 예제 소스가 넘처납니다.

급하실때야 말로 천천히 가시지 않으면 갈수도 없으며 길은 점점 막히게 됩니다.

윗분께서 하신말씀은 이해가 됩니다.
어떤 질문은 아주 초보적인 질문임에도 불구하고 고생한 흔적이 보입니다.
아마 API만 관심있게 제대로 보셨어도 질문의 내용이 많이 달라졌을거라 봅니다.

겨우 Tree View쓰라는 말이나 적을거면서 뭐이리 말이 많냐라고 하실 수도 있겠으나
프로든 아마추어든 처음부터 잘할수 없어도 프로는 조급해 하지 않습니다.
원리부터 이해하려하느냐 문제만 해결하려하느냐의 차이 정도가 있겠죠.

freedom의 이미지

시간에 쫓기다 보니 (사실 아직은 API 에 대한 영어 해석 실력이 부족한 탓도 있는듯 합니다.)

문제해결에 너무 초점을 둔거 같아, 부끄럽네요

오랜만에 혹시나 해서 들어왔는데 좋은 말씀 많이 남겨 주셔서 감사합니다.

아, 그리고 이건 제가 돈을 받고 일하는 회사일이 아닙니다.

아직 학부생이구요, 연구실에서 하는 프로젝트 입니다..ㅠㅠ

위에분 말씀대로, 아마추어가 아닌 프로가 될 수 있도록 열심히 하겠습니다.

다들 좋은 하루 보내세요..^^

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.