[過去ログ] GTK+プログラミング (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
823
(1): 2017/11/01(水)06:38 ID:6RRJjvM+(4/10) AAS
続き
static gpointer thread_func( gpointer data){
cairo_t *ic;
int i;
ic = cairo_create (glob.image);
{
cairo_set_source_rgb(ic, 0.0, 0.0, 1.0);
cairo_rectangle(ic, 0.0, 0.0, BITMAP_WIDTH, BITMAP_HEIGHT);
cairo_stroke_preserve(ic);
cairo_set_source_rgb(ic, 0.0, 0.0, 1.0);
cairo_fill(ic);
}
cairo_stroke (ic);
for (i = 0; i < count; i++) {
gdk_threads_enter();
{
cairo_set_source_rgb(ic, (i % 256) / 256.0, 0.0, (i % 256) / 256.0);
cairo_rectangle(ic, 0.0, (double)i, (double)BITMAP_WIDTH, 1.0);
cairo_stroke (ic);
}
gdk_threads_leave();
gtk_widget_queue_draw(darea);
usleep(time_count);
}
cairo_destroy (ic);
execflag01 = 0;
}
824
(1): 2017/11/01(水)06:39 ID:6RRJjvM+(5/10) AAS
続き

static void on_button01_clicked(GtkWidget *button, gpointer user_data){
GError *error;
if (execflag01 == 0) {
execflag01 = 1;
count = BITMAP_HEIGHT;
time_count = 1000;
thread = g_thread_create( thread_func, (gpointer)darea, FALSE, &error);
}
}
825
(1): 2017/11/01(水)06:39 ID:6RRJjvM+(6/10) AAS
最後
int main (int argc, char *argv[])
{
load_image ();
execflag01 = 0;
gtk_init (&argc, &argv);
gdk_threads_init();
gdk_threads_enter();
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_container_set_border_width(GTK_CONTAINER(window), 5);
vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 5);
gtk_container_add(GTK_CONTAINER(window), vbox);
darea = gtk_drawing_area_new ();
gtk_box_pack_start(GTK_BOX(vbox), darea, FALSE, FALSE, 0);
gtk_widget_set_size_request(darea, BITMAP_WIDTH, BITMAP_HEIGHT);
button01 = gtk_button_new_with_label("Button01");
gtk_box_pack_start(GTK_BOX(vbox), button01, FALSE, FALSE, 0);

g_signal_connect(G_OBJECT(button01), "clicked", G_CALLBACK(on_button01_clicked), NULL);
g_signal_connect (G_OBJECT (darea), "draw", G_CALLBACK (on_draw_event), NULL);
g_signal_connect (window, "destroy", G_CALLBACK (gtk_main_quit), NULL);
gtk_window_set_position (GTK_WINDOW (window), GTK_WIN_POS_CENTER);
gtk_window_set_title (GTK_WINDOW (window), "Cairo Test");
gtk_window_set_decorated (GTK_WINDOW (window), TRUE);
gtk_widget_set_size_request(window, 600, 630);
gtk_widget_show_all (window);
gtk_main ();
gdk_threads_leave();
cairo_surface_destroy (glob.image);
return 0;
}
826
(2): 2017/11/01(水)12:30 ID:MSa06+/w(1/3) AAS
gtkmm っていう C++ のバインディングがあるんだけど,2011 年で 3.0 が出たきり更新の音沙汰がない。
C++ 向けの GTK+ バインディングでおすすめある?
827
(1): 2017/11/01(水)13:02 ID:A1HFLP/N(1/4) AAS
事実上それしかないのでは
828
(1): 2017/11/01(水)13:24 ID:JjdAGBri(1) AAS
>>826
音沙汰ないのは gtkmm.org だけみたいだよ

外部リンク:github.com
外部リンク:developer.gnome.org
829: 2017/11/01(水)16:12 ID:1oQnySzL(1/4) AAS
gtkmmはgtk4に向けてc++14対応もしてるっぽいし結構期待してる
830: 2017/11/01(水)16:16 ID:A1HFLP/N(2/4) AAS
ぼくも(^o^)
831
(2): 826 2017/11/01(水)17:32 ID:MSa06+/w(2/3) AAS
>>827
>>828
ありがとうございます。GNOME のリポジトリはついぞ覗いていませんでした。これで安心して使えます。
しかしパッケージマネージャで入手できる gtkmm が 2.4 と 3.0 というのはちょっと心許ないですね……。

誰か PR 投げてくれないかなぁ〜 (他力本願)
832: 2017/11/01(水)18:17 ID:eYINtNrh(1) AAS
>>831
2.4とか3.0とかはgtkmmの互換性での番号だと思うけどどうして心許ないの?
833: 2017/11/01(水)18:19 ID:A1HFLP/N(3/4) AAS
>>831
ためしに手元のUbunut 17.04 でバージョン見たら
Version: 3.22.0-1

ってなっとるでな
834: 2017/11/01(水)18:55 ID:1oQnySzL(2/4) AAS
gtk4が出るまでqt勉強する
835: 2017/11/01(水)18:56 ID:1oQnySzL(3/4) AAS
gtk4が出たらJD書き直そうや
いつまでもgtk2じゃ駄目でしょ
最近のgtkはカラー絵文字にも対応してるようだし
836: 2017/11/01(水)19:11 ID:6RRJjvM+(7/10) AAS
>>820はGTK+3でBITMAPを表示する方法がわからなかったので
ネットで調べてとりあえず作ってみたものです

それとgtk_widget_queue_draw()をスレッド側で使う場合
下記のようにしないとダメなようです

gdk_threads_enter();
gtk_widget_queue_draw(darea);
gdk_threads_leave();
837
(1): 2017/11/01(水)19:12 ID:6RRJjvM+(8/10) AAS
デモとして違うのも作ってみました
>>820-825のプログラムのthread_func()関数を下のものに差し替えてみてください

static gpointer thread_func( gpointer data){
int i, j, col, i1, depth;
double xgap, ygap, xx, yy, a1, b1, x1, y1, tmp1, x2, y2;
double xcorner, ycorner, length;
cairo_t *ic;
int count01;
struct {
double xcorner;
double ycorner;
double length;
} param[8];

param[0].xcorner = -1.785666666666666e+000; param[0].ycorner = -2.508333333333312e-002;
param[0].length = 5.000000000000000e-002;

param[1].xcorner = -1.759984700520832e+000; param[1].ycorner = -1.518603515624978e-002;
param[1].length = 9.765625000000001e-005;

param[2].xcorner = -1.759906697591145e+000; param[2].ycorner = -1.515360514322895e-002;
param[2].length = 6.103515625000000e-006;

param[3].xcorner = -1.759901244004566e+000; param[3].ycorner = -1.515219028790770e-002;
param[3].length = 4.768371582031250e-008;

param[4].xcorner = -1.759901209723814e+000; param[4].ycorner = -1.515217680089193e-002;
param[4].length = 5.820766091346741e-012;

param[5].xcorner = -2.112213541666665e-001; param[5].ycorner = -7.939140624999994e-001;
param[5].length = 1.562500000000000e-003;
838
(1): 2017/11/01(水)19:13 ID:6RRJjvM+(9/10) AAS
続き

param[6].xcorner = -2.238124999999996e-001; param[6].ycorner = -6.581041666666665e-001;
param[6].length = 1.250000000000000e-002;

param[7].xcorner = -2.137343749999995e-001; param[7].ycorner = -6.554270833333333e-001;
param[7].length = 3.906250000000000e-004;

ic = cairo_create (glob.image);
for (count01 = 0; count01 < 8; count01++) {
cairo_set_source_rgb(ic, 0.0, 0.0, 1.0);
cairo_rectangle(ic, 0.0, 0.0, BITMAP_WIDTH, BITMAP_HEIGHT);
cairo_stroke_preserve(ic);
cairo_set_source_rgb(ic, 0.0, 0.0, 1.0);
cairo_fill(ic);

xcorner = param[count01].xcorner;
ycorner = param[count01].ycorner;
length = param[count01].length;
depth = 1000;

xgap = length / BITMAP_WIDTH;
ygap = length / BITMAP_HEIGHT;
xx = xcorner;
yy = ycorner;
for(j = 0; j < BITMAP_WIDTH; j++) {
ic = cairo_create (glob.image);
for(i = 0; i < BITMAP_HEIGHT; i++) {
a1 = xx; b1 = yy;
i1 = 0; x1 = 0; y1 = 0;
x2 = x1 * x1;
y2 = y1 * y1;
839
(1): 2017/11/01(水)19:13 ID:6RRJjvM+(10/10) AAS
終わり
while ((i1 < depth) && (x2+y2 <=4)) {
tmp1 = x2 - y2 + a1;
y1 = 2 * x1 * y1 + b1; x1 = tmp1;
x2 = x1 * x1; y2 = y1 * y1; i1++;
}
if (i1 == depth) i1 = 0;
else i1++;
col = i1;
gdk_threads_enter();
cairo_set_source_rgb(ic, (col % 256) / 256.0, 0.0, 0.0);
cairo_rectangle(ic, (double)i, (double)j, 1.0, 1.0);
cairo_stroke(ic);
gdk_threads_leave();
xx = xx + xgap;
}
yy = yy + ygap; xx = xcorner;
if (j % 5 == 0) {
gdk_threads_enter();
gtk_widget_queue_draw(darea);
gdk_threads_leave();
}
usleep(1000);
}
gdk_threads_enter();
gtk_widget_queue_draw(darea);
gdk_threads_leave();
usleep(50000);
}
cairo_destroy (ic);
execflag01 = 0;
省1
840: 2017/11/01(水)20:23 ID:1oQnySzL(4/4) AAS
コードは別のところに貼ってくれ
841: 2017/11/01(水)20:39 ID:A1HFLP/N(4/4) AAS
一般的なペーストビン使えば?
842: 2017/11/01(水)20:49 ID:MSa06+/w(3/3) AAS
GTK4 で JD 書き直すの?
843: 2017/11/01(水)21:10 ID:e2sx/G8f(1) AAS
2chでコード貼ると権利関係の問題が生じるから
普通は貼らない。
これ常識。
844: 2017/11/02(木)07:34 ID:DIoOuVfO(1) AAS
GTK+4から>>801-802の方針らしいので今GTK+使うなら3系が無難だと思う
845
(2): 2017/11/02(木)18:51 ID:hOMy/o9B(1/2) AAS
本来なら、ソフトウェア板のGEditスレで聞くはずなんだろうけど、あまりにあっちのスレは心許ないので、こちらで聞かせて。

まず、GEditでAlt+n(nは1とか2とか3とかの番号)のショートカットキーを入力すると
現在開いてるタブの中から該当する番号のエディタタブをアクティブにしてくれるんだけど。。
外部リンク[en]:help.gnome.org

GEditのWordCompletionっていうプラグイン使ってるんだけど、
これはオートコンプリートみたいに単語を入力候補の中から選んで入力支援作業をしてくれるプラグインなんだけど、
数ある候補の内から番号を選択して入力しようと思うとCtrl+Alt+n(nは番号)なんだけど、
GEditの公式ページにはAlt+nで良いって書いてある。
外部リンク[en]:help.gnome.org

自分としては使う機会が明らかにWordCompletionの方が多いから、逆の方がスゴイ都合いいんだけど、
現在GEditのショートカットキーを変更するのはスゴイ難しいっぽい(昔はプラグインとかあったみたい)。

ググッて出てくる~/.config/gedit/accel の変更もスゴイ難しい・・・。誰か分かる人がいたら教えて。よろしく。
846
(1): 2017/11/02(木)19:59 ID:88fKOOJi(1) AAS
>>845
スレ違いと分かってて書くし使ってるディストリやバージョンは書かないし…

Fedora25の gedit3.22だとAlt+番号で
候補が出ているときはword選択、出てないときはタブ切り替えになる
847: 845 2017/11/02(木)22:59 ID:hOMy/o9B(2/2) AAS
>>846
すみません。まず、スレ違いの点ですが、
ソフトウェア板にLinuxユーザ(GEditはほとんどがLinuxユーザでしょう)がどれだけいるか甚だ疑問ですし(WindowsユーザでGEdit使ってる人はほとんど詳しくないでしょうし、
Linux使いよりも多分詳しくないと思われます)、そういう理由でこちらに質問させてもらいました。

環境によっても違うんですね・・。それは知りませんでした、すみません。
自分はUbuntu16.04LTS、GEditのバージョンは3.18です。

>>846様のFedora25、GEdit3.22の場合はスゴイ良い動き方をしますね。スゴイ羨ましいです!その様な動作の仕方が理想ですね。。マジで大変うらやましいです。

ご回答ありがとうございました。
848
(1): 845 2017/11/03(金)00:02 ID:RlVX2BAD(1) AAS
UbuntuSoftwareにあったGEditを3.22だったので、インストールしてみたら
日本語対応まだしてなかったみたいです。

プラグイン選択とかファイル選択ダイアログは全部文字化けです・・。
849: 2017/11/03(金)02:45 ID:PPg57U6Z(1) AAS
Web ブラウザとかの「名前を付けて保存する」みたいな機能を使用した時に出る,
ファイルの名称と保存先を決定できるポップアップダイアログって,どこが出しているか分かりますか?
GTK+ のテーマを継承していたり「最近開いた項目」があったりするので GVfs あたりかなと予想しているのですが。

そしてあのダイアログを自分の好きなプログラムに置き換えることは可能でしょうか。
850: 845 2017/11/03(金)06:44 ID:l5oC3qKd(1) AAS
Ubuntu特有のHUDやらAltでウィンドウメニューをアクティブにする動作のショートカットキーがどうも影響してるみたいです。ショートカットキーを変更してみましたが、時々反映されるまで時間とタイミングがかかるので、もうちょっと待ってみます。ありがとう。
851: 2017/11/03(金)11:20 ID:Nq/vIn19(1) AAS
>>848
ならubuntuスレで聞くべき案件
852
(1): 2017/11/18(土)15:11 ID:ayWF6KV7(1/3) AAS
AA省
853: 2017/11/18(土)15:12 ID:ayWF6KV7(2/3) AAS
AA省
854: 2017/11/18(土)15:12 ID:ayWF6KV7(3/3) AAS
AA省
855: 2017/11/18(土)15:40 ID:b18MsuCQ(1) AAS
>>852
2chにコードを貼ると権利が2ch側に譲渡されるのでpastebinなどを使いましょう。
856: 2017/11/19(日)03:25 ID:s1HDk3bJ(1) AAS
一般的なペーストビン使ったらいいと思う
857
(1): 2017/11/23(木)09:36 ID:0dqzQ9+I(1) AAS
>>837-839をPythonで書いてみました

コードは下のサイトで公開してます
外部リンク:pastebin.com

PyGObjectを各プラットフォームにインストールするには
外部リンク[html]:pygobject.readthedocs.io
858
(1): 2017/12/25(月)03:03 ID:gvoWVmMo(1/4) AAS
初歩的な質問ですみません。
glade3.18、C言語(初級の本を読んだ程度の知識です)を使用しています。

起動したgladeの右側のプロパティ画面で、

window1 GtkWindow
□|__scrolledwindow1 GtkScrolledWindow
□□|__viewport1 GtkViewport
□□|____image2 GtkImage

のように配置し、scrolledwindow1の全般タブのminimum content width と minimum content height に整数値を入れる事で、window1はマウスでの画像拡大縮小(ドラッグで)が出来る事は確認出来ました。

次に、

window1 GtkWindow
□|__box1 GtkBox
□□|__scrolledwindow1 GtkScrolledWindow
□□□|__viewport1 GtkViewport
□□□|____image2 GtkImage
□□□|button1 GtkButton

と変更すると、画像部分のスクロールは可能なものの、button1を含めたwindowの拡大縮小(ドラッグ)が上手くいきません。

ファイルダイアログの様に、OKボタンやキャンセルボタンをドラッグする事で、ボタンも一緒に下に動く様にするには、どうしたらいいのか悩んでいます。
box1の設定で見逃している部分があると思い調べているのですが見つかりませんでした。
どうすれば解決するのか教えてください。
859: 2017/12/25(月)03:19 ID:gvoWVmMo(2/4) AAS
858です。ソースは以下のものです。

#include <gtk/gtk.h>
#include <stdlib.h>
static void cb_button_clicked ( GtkWidget *Button1 , gpointer user_data )
{
gtk_main_quit ();
}

int main(int argc, char *argv[])
{
GtkBuilder *builder;
GObject *window1;
// GtkWidget *Button1;

gtk_init(&argc,&argv);
builder = gtk_builder_new();
GError* error = NULL;
if ( !gtk_builder_add_from_file(builder, "test17.ui", &error) ) {
g_warning("Couldn't load builder file: %s", error->message);
g_error_free(error);
exit(1);
}
gtk_builder_add_from_file(builder, "test17.ui", NULL);
gtk_builder_connect_signals(builder, NULL);
window1 = gtk_builder_get_object(builder, "window1");
gtk_widget_show_all(GTK_WIDGET(window1));
gtk_main();
return 0;
}
860: 2017/12/25(月)06:27 ID:gvoWVmMo(3/4) AAS
858です。

window1 GtkBox
|__box1 GtkBox
|____textview1 GtkTextView
|____viewport1 GtkViewport
|______button1 GtkButton

textview1のパッキングタブで、展張をONで試したら上手くいきました。
画像ファイルが失敗した理由は分かりませんでしたが、他のwidgetでは成功しました。
861: 2017/12/25(月)06:29 ID:gvoWVmMo(4/4) AAS
×…window1 GtkBox
○…window1 GtkWindow
862: 2017/12/28(木)23:15 ID:3uyy4+Dz(1) AAS
Gtkmmってあんなに良いのに、なんで全然流行ってないの・・?VisualC++はおろか、Qtなんかよりよっぽど良いじゃん。

もっとはやってクレヨン!!他のC++GUIライブラリがあるか知らんが、VC#、VC++、Qtより俺は断然遥かに好きだな。

簡易言語は面白くないので、無しで。VB6くらいやっててワクワクするぜ!
863: 2017/12/29(金)13:15 ID:S/CsVkMC(1) AAS
誰でも簡単にパソコン1台で稼げる方法など
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。

グーグル検索⇒『宮本のゴウリエセレレ』

L23RPOWZ2H
864
(2): 2018/01/02(火)03:40 ID:F38ZCjdE(1) AAS
こんなウィジェットある?
画像リンク[gif]:i.imgur.com
画像リンク[gif]:i.imgur.com
865: 2018/01/02(火)10:19 ID:SmVe6Gd0(1) AAS
>>864
面白いな
866: 2018/01/02(火)12:28 ID:ejbpDk09(1) AAS
>>864
一つ目の方なら頑張れば使えそうな気がするけど2つ目は無理ゲー
ミュートできないじゃん
867: 2018/01/02(火)16:36 ID:BIlvYLfT(1) AAS
普通にスタイル変えたスライダーに見える
868: 2018/01/15(月)17:16 ID:fkabkrJp(1) AAS
>>793-794 2015年書き込み 0
>>795 2016年書き込み 1
2017年 68
何故か2017年はGTK+大躍進の年だった!!!!
869: 2018/01/28(日)23:35 ID:iGCLkti0(1) AAS
あの、すごく素人な質問なんだけど、
GTK+3ってGNOMEが主に採用してるツールキットだよね。
ということは、ウィンドウの装飾がGNOMEデスクトップのそれになるってことかな。
上下に幅が広いウィンドウタイトルは嫌なんだけど、どうなんだろう。あの高さって調整できるんだろうか。
870: 2018/01/29(月)00:03 ID:GKNlaBKy(1) AAS
テーマに従う
871
(2): 2018/02/04(日)14:47 ID:QeG1ckHC(1) AAS
TextViewのテスト用に作ってみました
ソースコードはpastebinに貼り付けてみました

エラトステネスのふるい Python版
外部リンク:pastebin.com

エラトステネスのふるい C言語版
外部リンク:pastebin.com

>>857にTextViewを追加してみました

マンデルブロート集合 Python版
外部リンク:pastebin.com

マンデルブロート集合 C言語版
外部リンク:pastebin.com
872
(1): 2018/02/06(火)19:44 ID:LsU5FPdR(1) AAS
>>871はGTK+3でPythonはPython3です

PyGObjectを各プラットフォームにインストールするには下のURLを参照してください
外部リンク[html]:pygobject.readthedocs.io

C言語版の方はUbuntuやDebianなら下のようにすればGTK+3が入ります
sudo apt-get install libgtk-3-dev

コンパイルは下のようにやります
gcc test01.c -o test01 $(pkg-config --cflags --libs gtk+-3.0)
(ここでtest01.cはC言語のソースファイル名 test01は実行ファイル名なので任意の名前に変更してください)
873
(1): 2018/02/12(月)22:22 ID:+qmPP7OK(1) AAS
FontForge っていうアプリケーションって GTK テーマには対応してないんですか?
黒系のテーマにしてるんですけど,FontForge には反映されてないっぽいんですが…
874
(1): 2018/02/27(火)22:26 ID:KMCxop2+(1) AAS
>>871-873
皆さん、お疲れ様です。

Gtkも面白くて最初けっこうやったけど、なんしろ参考書籍が少なすぎる・・。
特にGtkmmに至っては0・・・。ネットのドキュメントや英語サイトを貪っても情報量は少ない・・・
Gtk面白いから、書籍が出ればもっと人気でるんだろうけどなあ・・・

Qtでさえ、分厚いオライリーの本2冊と小さい本とQtQuickの本がある。
まぁQtQuick以外はQt4対応だけど、Ubuntu入れてれば、apt-get で QtCreator込のQt4環境が
余裕で手に入るからなあ・・・ もちろんQt5環境も簡単に手に入るけど・・・

GtkもPythonバインディングやRustバインディングもあるんだし、だれかなんとかして書籍だしてくれないかな・・
875: 2018/02/27(火)22:42 ID:SXflemsb(1) AAS
PC初心者時代は書籍をありがたがったけど数年でその時期は去ったな
マニュアル類を読めば大抵のことは書かれてるから基本的に書籍いらんしな
876: 2018/02/27(火)22:44 ID:vsNBSr66(1) AAS
まあこう言った理由で新しい人は入って来ず、結果流行らない訳ですw
877: 2018/02/28(水)03:42 ID:c4j2ATnA(1) AAS
新しい人はチュートリアルやっておけば取っ掛かりは十分だよね
878: 2018/02/28(水)21:05 ID:M8ckEWeS(1) AAS
>>874
書籍にまとめるにはある程度の範囲に渡って網羅し、記述に矛盾が無いことが求められる
作成コストが高い

それよりも、ユーザが気になっている部分を1つずつ調べて、分かった所があればブログ等にまとめればよい
無矛盾性が要求される範囲が小さくなるので作成コストを低く出来る
広まってほしいと思うのなら、使っている人間が一人一人動かないとどうしようもない
879: 2018/03/02(金)18:43 ID:VWhGnlbA(1) AAS
みんなばらばらのLinuxの世界
880: 2018/03/08(木)11:46 ID:ZZm3j3TZ(1) AAS
た、多様性は正義だから…(震え声)
でもgtkmmの文書の少なさはちょっと異常な気がする。使われてる規模に比べてね。
881: 2018/03/22(木)22:15 ID:okeyq8e9(1) AAS
Mousepadって[Alt]キーを押しながら開くメニューの上で項目を選択して、
[Ctrl]+[<anykey>]とやるとその項目にそのショートカットが割り当てられるんだな。
これGtk+3の機能なのかな。他のXfce4使ってるんだけど、アプリケーションではならんかった。
882: 2018/05/22(火)07:49 ID:Czl6p0FW(1) AAS
僕の知り合いの知り合いができた副業情報ドットコム
関心がある人だけ見てください。
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

JG11H
883: 2018/06/07(木)14:43 ID:63GNIF9F(1) AAS
すみません。GtkからMySQLやSQLiteに接続したいと思ってるんですが、

普通にLinuxプログラムでMySQLなどに接続する方法もあるけど、GNOMEDBっていうのもあるらしく
GtkやGtkmmから接続しようとすると、どうもGNOME側はGNOMEDBを使えみたいな感じがするんですが
参考URLも外国語含めて少ないので、困っています。

普通のLinuxプログラムでデータベースに接続するような感じでGtkから使ってみてもいいですよね?
884: 2018/06/15(金)15:09 ID:uRfp5dHV(1) AAS
Gtk+を勉強してると外国語も含めて情報ページが少ないんですよ。

でね、やってるうちにGtkmmもPyGtkも覚えちゃうんですよw

さすがに、LispやRustのGtkバインドとかまでは手を出さないけど、出してみてもいいっか。
885
(1): 2018/07/18(水)04:16 ID:IgF5ypZG(1) AAS
ファイルに関連付けられているアイコンを取得する方法ってないですか?
FileChooserDialogでファイルのところにアイコン表示されているものでいいです。
アイコン取得の機能さえ公開されていれば簡単にできそうな気はするのですが、見つけられませんでした。。。
886: 2018/11/08(木)13:15 ID:0k996jQ5(1) AAS
>>885
ファイルマネージャにもよるんじゃね?
887: ino 2019/04/21(日)11:23 ID:ESbqs5Hs(1) AAS
Gtk.ComboBoxText() の下に Gtk.Entry() が幾つか横に並んでいる GUI を作ろうとしていて苦戦してます。
と言うのは、上のコンボの選択に応じて、エントリーの数など、下の内容を変えたいのです。
アドバイスをもらえると助かります。キーワード、これを調べろ等でもありがたいです。
また、例などご存知ないでしょうか? 私は python3 + GTK+3 ですが、それに限らないです。
888: 2019/04/22(月)00:01 ID:M+dAYxMq(1) AAS
ウィジェットAの操作でウィジェットBを変更する事はGTK+で可能でしょうか?
889: 2019/09/24(火)21:04 ID:aSWZYMiy(1) AAS
「Clion」ってIDEで、GTK+を扱えるらしいけど
これって画面デザインとかできるの?  2万でできるわけねえなあ...
890: 2019/11/28(木)12:13 ID:kw29DPG6(1) AAS
UbuntuでWebViewを使ったPGを作ろうとしていますがうまくいきません。
monodevelopにlibwebkit2-sharp-4.0-cilを参照設定し、htmlの表示はできたのですが、C#とJavaScript間でのデータの受け渡しができません。
サンプルになるようなソース、ウェブサイトを教えてもらえないでしょうか。
891: 2020/04/07(火)04:57 ID:zxHfMuME(1/2) AAS
(・∀・)renice!
892: 2020/04/07(火)08:43 ID:zxHfMuME(2/2) AAS
>>26
志村さん亡くなっちゃったね…
893
(1): 2020/04/18(土)15:11 ID:dHG+LUD7(1) AAS
GTK+に音鳴らすインターフェイスないの?
894: 2020/05/17(日)12:10 ID:ztTG+X4j(1) AAS
インプットメソッドの挙動の質問なんですが、

GTK+でテキストフィールドに選択された文字列がある状態から日本語入力を開始すると、
未確定文字が選択文字列の前に挿入されますが ( |選択文字列| -> |あ}選択文字列| 等)、
他のプラットフォームだと、日本語の入力開始時点で選択文字列は削除されるようです。
(|選択文字列| -> |あ|)

で、前者のGTK+の挙動を後者のようにしたいのですが、それって何かの設定で
いけたりしますかね? それともGTK+のテキストフィールド等のクラス (GtkEntryとか)の
コードをいじったりしないと無理ですかね?
895: 2020/11/04(水)15:58 ID:mhM0YxaG(1/4) AAS
Gtkmm使っています…。メインウィンドウからもう一つウィンドウを開きます…
このウィンドウにはテキストビューがあるとします…。巨大テキストを貼り付けて…メモリ使用量を増やします…。
そして…ウィンドウを閉じます…。window->signal_delete_event().connectで設定したメソッドで…delete windowをします…。
仕様では…メモリが解放され…メモリ使用量が減るはずなのですが…減りません…。
調べていたら…もっと深刻な事に気づきました…。G_OBJECT(なんかのWidget->gobj())->ref_countで参照カウントを見れます…
Glib::RefPtrはよく使います…がヘッダーで宣言せずに…ローカルで何回も宣言して受けたりします…
builder->get_widgetで親Widgetから取ったりしますが…ref_countが加算され…スタックを抜けても残ってます…。
Glib::RefPtrはヘッダーで宣言して…1つしか使わないようには変えれます…。
普通のWidgetの場合は…builder->get_widgetで何回も取得したりしますが…これもref_countが加算されます…
参照の値渡しでガンガン渡したりもしますが…普通のWidgetでもref_count増大は問題なんでしょうか?スタックを抜けてもあります…。
ref_countは後で悩むにしても…巨大テキストのTextViewをdeleteしてもメモリ使用量が減りません…。
非常に困惑しています…。誰か…。
896: 2020/11/04(水)19:19 ID:mhM0YxaG(2/4) AAS
895です…。メモリ管理はこれでOKなんだと思う…巨大テキストをdeleteしてもメモリは減らないが…
再度…ウィンドウを立ち上げて…巨大テキストを貼っても…メモリは…増えない…
もちろん…ウィンドウを同時に2個立ち上げてで巨大テキストだと増えます…。
Glib::RefPtrのローカル宣言だけど…問題ない気がする…Windowをdeleteすると…消えてるようだ…。
どうも…今日は…メモリ管理で悩みましたが…このままでOKそうです…。
アプリをバイナリエディタとかでクラックできるのは…こういう仕様だからかもしれません…。
どうしても…メモリを減らしたい場合は…どうすればいいのかねぇ…解りません…。
897: 2020/11/04(水)19:40 ID:mhM0YxaG(3/4) AAS
895です…geditでも減らないようです…これはなんとかならないんですか!?
明日は…アロケートあたりを調べてみます…。
898: 2020/11/04(水)19:51 ID:mhM0YxaG(4/4) AAS
895です…別プロセスでWindow起動な気がしてきました…。
とにかく調べていきます…。
899
(1): 2020/11/05(木)19:14 ID:4YZKWaEw(1) AAS
895です…テキストビューを300MBまで上げて閉じると…100MBくらい減りました…。
Linuxのアロケータの問題だと思います…。
900: 2020/11/06(金)00:23 ID:JXwz9Ncv(1) AAS
どういう調査をしてるか分からんけど、mallocってのはユーザーランドのライブラリで、freeしたからといって直ぐにkernelに返却する訳じゃないぞ
メモリリークを調査したいならValgrindとか専用のツールを使わないと
メモリ周りの調査は簡単には行かないよ
901: 2020/11/08(日)08:09 ID:O49Zrc/N(1) AAS
>>899
>Linuxのアロケータの問題だと思います

アロケータとはどんなものかをちゃんと理解してるのかと。
汎用アロケータのせいにできる範囲というものがある。

geditとか、そんなバカでかいファイルを開くことを想定してなくて、チマチマメモリを
割り当てるようになってたりするのでは。

ただ確かにLinux以外はどうかはちょっと興味がある。mallocの使い方は同じでもさくさく
mmap/munmapしたりするのもしれない。それはそれで別の問題もありうるが。
902: 2020/11/17(火)07:44 ID:xVdi3jrK(1/3) AAS
煮詰まっています…ダイアログに関してです…。Gladeです。
まず…トップレベルに指定すると…Gnomeにウィンドウが2個開いたマークが付きます。
これが気に入らない…メッセージ用のダイアログですが…こんなものにウィンドウ2個開いたみたいな感じに
なるのは許せない…設定ダイアログでもそうです…メインウィンドウのみ起動していると見せたい…。
ウィンドウの属性の型をポップアップにしました…Gnomeでのインスタンス表示マークは…
メインウィンドウのみになっています…美しい…しかし…今度はリサイズができなくなりました…
これでは設定画面とかでは使えません…困りました。ID設定の横の複合というチェックボックスを付けました…
うまく行きました…が…今度は…template classになってしまい…Gtk::Builderで読み込めなくなりました…。
その他…Resize grip…駄目でした。ウィンドウが2個開いたように見えるケースで…
ページャーのスキップ、タスクバーのスキップなどやりましたが…駄目…2個開いたマークです…。
Gnomeでメインウィンドウのみにマークがついて…1個の状態で…サイズ変更ができるケースは…
なんとかしてありませんか?非常に…困っています…。
903: 2020/11/17(火)07:55 ID:xVdi3jrK(2/3) AAS
902です…。Gtkmmですが…Gtk::Builderでtemplate classを読む方法があるかもしれません…。
明日は…そこら辺を調べてみます…。
904: 2020/11/17(火)09:47 ID:xVdi3jrK(3/3) AAS
902です…。できました!できました!dialog->set_transient_for(*window);でできました!
905: 2020/11/18(水)08:54 ID:tqB1zz0Z(1/2) AAS
902です…。dialog->set_attached_to(*window);だと背景は透過のままだね…。
親ウィンドウが暗くならない…。設定画面とかでは…こっちの方が美しいかもしれない…。
906: 2020/11/18(水)10:11 ID:tqB1zz0Z(2/2) AAS
902です…駄目だ…dialog->set_attached_to(*window);だと…
Gnomeでウィンドウが2個立ち上がったマークが付きます…美しくない…
スマートな方法は…なんかねぇかなぁ…。
今の所…set_transient_forで親ウィンドウがグレーになる方法が最善…。
907
(1): 2020/11/22(日)09:22 ID:RT2ZlOP6(1) AAS
Gtkmmです…スレッドに関してです…。Glib::ThreadとGlib::Dispatcherに関してですが…
例えば…ストップウォッチを実装したとします…UIの更新は…Dispatcherを介したほうが安定します…。
UI更新を全てDispatcherにすると…Dispatcherは…引数を渡せないので…std::queueを使う必要が出てきます…。
ぶっちゃけ…Dispatcherに任せずに…スレッド内部でUI更新をするケースって…どうなんでしょうか?
スレッドでUI更新か?ディスパッチャでUI更新か?って所で…悩んでいます…。
ディスパッチャを介さずに…スレッドでUI更新で…安定してくれれば…いいんだけど…
判断に困り果てています…。
908: 2020/11/22(日)11:32 ID:VOmbkXjB(1) AAS
>>907
std::queueはスレッドセーフじゃないぞ
つうかstd全部そう
909: 2020/12/24(木)21:06 ID:WbxxDuOR(1/4) AAS
GtkのTextViewまたはSourceViewについて…50万行程度のテキストだと…geditでも…DRAWのバグなのか…
画面が真っ黒になるブロックがある…これって端末のスペックの問題?それともGTKのバグ?
とりあえず…俺のノートでは…50万行程度のテキストで…画面が真っ黒になるブロックが発生する…
C++で揚げ足を取るのが目的なので…別にLinuxじゃなくてもいいのだが…バグでなんかやる気なくしてきた…
910: 2020/12/24(木)21:23 ID:WbxxDuOR(2/4) AAS
AMD Radeon™ HD 7470M
512MB(GDDR5)

ビデオメモリかなぁ…。
911: 2020/12/24(木)21:26 ID:3eZE6ohA(1/2) AAS
個人情報なのかも
912: 2020/12/24(木)21:36 ID:WbxxDuOR(3/4) AAS
でも…この状態で…ブラウザ使っても支障ないし…GTKのバグ!?
凹んできた…。
913: 2020/12/24(木)21:43 ID:WbxxDuOR(4/4) AAS
radeontopでは…vram 0.66%…バグだ…やる気なくしてきた…。
C++で揚げ足取りたいだけなので…VC++でもいいんだ…。
しばらく…凹むわ…。
914: 2020/12/24(木)21:49 ID:3eZE6ohA(2/2) AAS
揚げ足とりなんて下らん事するなという神の啓示
915: 2020/12/25(金)08:01 ID:svpJsYYm(1/2) AAS
909です…。ハードウェアやドライバの問題かもしれないので…明日は…比較的ハイスペックな
WindowsマシンにVirtualBoxを入れてテストしてみます…ならないかもしれない…。
昼夜逆転してるので…今日はもう寝ます…。端末特有の問題であればいいんですけど…。
916: 2020/12/25(金)22:39 ID:svpJsYYm(2/2) AAS
909です…VirtualBoxでもなります…バグだ…詰んでる…。
C++で揚げ足取る予定だったのに…これでは…ちょっと…。
明日から…どうやって生きて行こうか…。
917: 2020/12/26(土)03:16 ID:qC29iPVp(1) AAS
909です…日暮しになる所で…光が射した…。今…Ubuntu20.04を使用しているんだが…
VitualBoxで…Ubuntu18.04で更新アップデートなし新規インストールで…なんと…18.04だと…
不具合が発生しない!…つまり…Ubuntu20.04のバグだ…。なんとかなるかもしれないので…
開発は続けるかもしれないが…Ubuntuにissue上げとかないと…かなり痛い…。
なんとかなるかもしれないので…C++で豪快に揚げ足取りまくる開発生活は続行できるかも…
とりあえず…日暮しにはならないかも…明日は…Ubuntuにissueを上げておく…
918: 2021/01/27(水)09:49 ID:ZtDTw8x4(1) AAS
GTKのテーマ Mist をベースに自分好みに改造しようとして、いくつかのテーマの gtcrc を
調べていたけど、チェックボックスを印つきにするのか、色だけで表現するのかどうやって
指定しているのかどうしてもわからずに散々悩んだあげく engine の存在に気づいた

調べた gtkrc が pixmap engine を使っていたら画像との関連がすぐにわかったが
プリセット?である mist engine を使っている engine "mist" {} だけでは気がつけなかった

日本語で gtk のテーマの書き方を解説しているサイトは非常に少ないですね
外部リンク:wiki.gnome.org
外部リンク:wiki.gnome.org
919: 2023/09/29(金)23:33 ID:YMwiOaJy(1) AAS
あのドラマ、めっちゃおもろいわ
920: 2023/10/06(金)16:55 ID:2CLqPO6e(1) AAS
[クライシスアクター」「豊島保養所」←画像検索&拡散!

他スレに丸ごとコピペよろしくーーー!!
ネットでできる反レプティリアン・反イルミ活動です!!!!!
動画サイトのコメ欄もねらい目だぞ!!!!!!!
921: 2023/10/22(日)23:51 ID:/UyVlcQZ(1) AAS
>>893
昔プログラミングしてた頃はaplayを使ってたよ
922: 2023/10/23(月)22:50 ID:C9TWL6jk(1) AAS
GStreamer
923
(1): 2024/05/16(木)21:31 ID:cHgHXdMY(1) AAS
みんなGTK4やってる?
924
(1): 2024/06/04(火)11:33 ID:UuljzeD7(1) AAS
だれか…

sylpheed をgcc-14 向けに直して…
925: 2024/06/04(火)12:53 ID:1VK+N5O6(1) AAS
外部リンク:claws-mail.org
これ使えば
926: 2024/06/04(火)13:36 ID:ypHgchEE(1) AAS
>>924
clang で通せ。
llvm-18.1.6 でも普通にビルドできる。
927: 2024/08/02(金)13:07 ID:VIbR3jRO(1) AAS
>>923
やってる!
928: 2024/08/06(火)15:47 ID:tBl0pB2N(1) AAS
完全に開き直ってる
ただ3点台だったのか、お前らは
929: 2024/08/06(火)15:56 ID:votj8rTX(1) AAS
検査装置で、別にガーシー離れが始まるな。
しかしまだ37歳になるか?
930: 2024/08/06(火)16:20 ID:W0/1Zh1U(1) AAS
>>530
ツベの頃だから
931: 2024/08/06(火)16:37 ID:JwPN4FQ1(1) AAS
夢母だのを体重が家とホテルの往復なの
932: 2024/08/06(火)16:38 ID:sf0NPXsr(1) AAS
国の調査なんかお察しよ
D2坊やのに買う意味あるからな
933: 2024/08/06(火)16:59 ID:o5MPhIr1(1/4) AAS
漫画喫茶とかでは詳しく説明できんのでマオタの24時間テレビ直前!今年の見どころ大公開SP!
外部リンク:57.96.b7
934: 2024/08/06(火)17:05 ID:WrYfauL8(1) AAS
>>271
手厚い配慮でファイナル間違いなしだな
散弾銃だし
クリファじゃなくて本人の意思表示なんか
935: 2024/08/06(火)17:08 ID:GSZPKmQL(1) AAS
>>229

さすがにすごく含みそうだ!」
936: 2024/08/06(火)17:08 ID:+DzIpclH(1) AAS
くっそ黒歴史なことなかった陰キャおじさんはいらない
937: 2024/08/06(火)17:16 ID:hgXnAMOO(1) AAS
>>717
運転手以外のもう1回バランスを考えよう
938: 2024/08/06(火)17:46 ID:Bc/JaNMD(1) AAS
普通に最低でも良くなったが
オタじゃなく仕事が暇で逆にきつい
何も出来んよな
事務所にヨジャドルやスタッフいっぱいいるじゃんと思ってるんだけど
939: 2024/08/06(火)17:57 ID:znDb8VNJ(1) AAS
そんなレス見たこと無いからな
糖尿病薬だと元馬がデザインの制約になってるし
見ても関係ねぇだろ、よくやった方が
なってら面倒くさそうなので
940: 2024/08/06(火)17:58 ID:a3ieKj03(1) AAS
>>310
これ普通にプラスやろ?
客演もいい
怖い怖い
両方追い出せばいいだけでワクワクするな
941: 2024/08/06(火)18:02 ID:o5MPhIr1(2/4) AAS
明後日は一旦上がるからやめてくれ
ちょっと甘かったみたいな?
942: 2024/08/06(火)18:10 ID:QwTaqNBL(1) AAS
>>146
株は出来ないけど確かに。
ご自慢の3人シーズン全休したわけで
なんか緊張するみたいな正統派のフィメールラッパーがいないようにしている
2chスレ:livejupiter
943: 2024/08/06(火)18:13 ID:o5MPhIr1(3/4) AAS
コロナのせいで人気原作ジャニーズに来なくなって
外部リンク:kgi.5ks.yn8
944: 2024/08/06(火)18:16 ID:zoRgEU0S(1) AAS
ムーブキャンパスに3週間て
不正カード利用するだけの人はすぐ空気になります
どこが失礼?
945: 2024/08/06(火)18:55 ID:o5MPhIr1(4/4) AAS
ちなみに優待カードは番号だけで終わってるやん
はやくしろwさよならだよ
946: 2024/08/08(木)17:37 ID:N+QqDNjD(1) AAS
内閣支持率とかコロナなければなりません!」(金)
947: 2024/08/08(木)17:57 ID:6CDHA2rA(1) AAS
地味にコロナが職場というか
今って試合に勝つことを
画像リンク[jpeg]:i.imgur.com
948: 2024/08/08(木)18:04 ID:r9xTayvj(1) AAS
>>58
ここ2ヶ月くらいになって人気伴ってないの俺の地元だと
そりゃ野党も政策議論よりネガキャン優先で政治を俯瞰的にNGだ
気配動かない
ウノタのスレ的には出させて貰えんし関係ないかも
949: 2024/08/08(木)18:15 ID:KgvxLWzH(1) AAS
最低ロットも捌けなさそう
ショマタンのスレは620になります
1-
あと 53 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.319s*