07/02/16 03:32:09
wxGladeでなんとか簡単なGUIをつくりはじめたんだけど、参考に出来るコードがたくさん
載ってるページってない?
101:デフォルトの名無しさん
07/02/16 08:58:54
つ VisualWx
102:デフォルトの名無しさん
07/02/16 18:26:44
>>100
samplesというディレクトリに60万行ほど載ってるけど、まだ足りないの?
103:デフォルトの名無しさん
07/02/18 01:33:16
>>102
samplesにはプルダウンメニューのサンプルがないよね。コンボボックスはあるけど。
どのクラスを使えばいいんだろう?
104:デフォルトの名無しさん
07/02/18 14:13:59
>103
wxComboBoxのwindow styleにwxCB_DROPDOWNとか
wxCB_READONLYを指定すればいいんじゃない?
105:デフォルトの名無しさん
07/02/18 15:50:22
wxChoiceのことか?
106:デフォルトの名無しさん
07/02/18 18:21:10
>>105
wxChoiceとwxComboBoxってどう違うん?
107:デフォルトの名無しさん
07/02/18 18:30:04
wxChoiceは、あらかじめ用意されたリストから選ぶだけ。いわゆるプルダウンメニュ-。
wxComboBoxは、プルダウンメニュー+「メニューにない物も入力出来るテキストボックス」
108:デフォルトの名無しさん
07/02/23 11:07:22
OSがT-Engineとかでウィンドウシステムが無いものにポーティングすることは可能ですか?
109:デフォルトの名無しさん
07/02/24 08:44:46
VisualWx使ってみたが、MicrosoftとかBorlandのRADとは
比べ物にならないな。
糞。
110:デフォルトの名無しさん
07/02/24 16:36:05
エディタ手打ちで済むものをいちいちポトペタしなくてもいいじゃないか。
111:デフォルトの名無しさん
07/02/25 01:24:44
いや、やっぱエディタ打ちはやってて面倒だよ・・・。
112:デフォルトの名無しさん
07/02/25 01:27:39
アセンブラがあれば(ry
113:デフォルトの名無しさん
07/02/25 03:00:56
ハンドアセンブルしてバイナリを直接入力すれば(ry
114:デフォルトの名無しさん
07/02/26 04:44:02
テキストコントロールの各行に対する行数(行番号)を表示させたいんだけど、
(行番号があらかじめ書いてある原稿用紙に書き込む感じにしたい)
なんかいい方法ない?
115:デフォルトの名無しさん
07/02/26 08:12:02
>>114
行番号表示用のウィンドウを作るのが多分一番楽
116:114
07/02/27 01:48:30
>>115
はい。それも考えたんですが、本文の行数が多い場合に縦にスクロールさせると、
行番号表示用の行数とずれてしまうという問題があり、詰まっています。
なにかいい手はないでしょうか?
117:デフォルトの名無しさん
07/02/27 10:53:40
>>116
テキストコントロールの内容を変更するたびに、
行頭に行番号を追加するようにすればいいんじゃね?
118:デフォルトの名無しさん
07/02/27 17:01:25
114, 116はかなりの初心者かな?
119:114
07/02/27 23:27:54
>>118
いままで簡単なスクリプトを書いて仕事(研究員)に使う程度だったのですが、
GUIつきのプログラムを作れば使いやすくなるし、同僚に自慢できるし、
上司によりアピールできるし。。。と思って始めたばかりです。
私のような初心者でも簡単なGUIが作れるという点ではwxwidgetsは素晴らしいと思います。
ただ、少し凝ろうとすると急にハードルが高く感じられます。今回の行番号表示など。
テキストエディタの表示オプションによくあったので、簡単に出来るのではと思ったのですが。
120:デフォルトの名無しさん
07/02/28 00:59:27
> 少し凝ろうとすると急にハードルが高く感じられます。
GUIフレームワークって何でもそうです。あらゆるものを御仕着せで用意するのは無理。
用意された機能を利用して実現できればそれでいいわけで、
これくらいはまだすんなり実現できる範疇に入るでしょうよ。
>>116は要はテキストコントロールをスクロールさせたら行番号表示が一緒に
動かないからずれるってことでしょ? それなら行番号表示の方も一緒に動かせればいい。
ということで次のステップはイベント処理ですね。
テキストコントロールのスクロールが発生したときを捕捉して、そのスクロール
量を知り、行番号表示の方に指定量のスクロールをさせる。
121:デフォルトの名無しさん
07/02/28 01:09:23
じゃあちょっと難しく感じるかもな。
基本的には、番号用のウインドウを作る→さもメインのパネルの一部かのように組み込む→
(位置を計算して)番号出す→スクロールイベントを取得→表示のアップデート(スクロール)
って流れかねえ。
>テキストエディタの表示オプションによくあったので
なんかこう、GUIをべたーっとした一枚の絵のように考えていたら
簡単にはできないよw
あと、この場合情報としての価値は低いが使用言語も書いたほうがいいよ。
122:114
07/02/28 03:32:32
>>120,121
アドバイスありがとうございます。イベント処理はいままで扱ったことが
ないので、調べてみます。
>あと、この場合情報としての価値は低いが使用言語も書いたほうがいいよ。
失礼しました。
Windows XP, ActivePerl-5.8 でwxPerlを使っています。
wxPerlは比較的マイナーなようですね。
123:デフォルトの名無しさん
07/02/28 06:37:40
C++ならwxScintillaがつかえるが、他の言語ではラッパーか書かないとだめかも?
124:デフォルトの名無しさん
07/02/28 13:10:52
117だけど、wxpythonで作ってみた
import wx
import re
class MyApp(wx.PySimpleApp):
def OnInit(self):
Frame = wx.Frame(None, -1, "Text Edit", size=(400,400))
self.Btn = wx.Button(Frame, -1, "Set Number")
self.Btn.Bind(wx.EVT_BUTTON, self.SetNum)
self.TxtBox = wx.TextCtrl(Frame, -1, "One\nTwo\n", style=wx.TE_MULTILINE)
self.SetNum(wx.Event)
MySizer = wx.BoxSizer(wx.VERTICAL)
MySizer.Add(self.Btn, 0, wx.FIXED_MINSIZE | wx.LEFT | wx.RIGHT | wx.TOP, 20)
MySizer.Add(self.TxtBox, 1, wx.EXPAND | wx.ALL, 20)
Frame.SetSizer(MySizer)
Frame.Show(1)
return 1
(つづく)
125:デフォルトの名無しさん
07/02/28 13:13:13
def SetNum(self, event):
Text = self.TxtBox.GetValue()
OldLines = Text.split('\n')
NewLines = []
Count = 1
for OldLine in OldLines:
NewLine = re.sub('^([ \d]+: )?', '%4d: ' % Count, OldLine)
NewLines.append(NewLine)
Count += 1
self.TxtBox.SetValue('\n'.join(NewLines))
app = MyApp()
app.MainLoop()
30分くらいで単純に作ったので、細かいツッコミは無しでお願いします。
126:デフォルトの名無しさん
07/02/28 23:55:44
微妙だなw
つか、そのままコピペしたらエラー出たわw
おいバグかよ、って思ったら、インデントの関係だったわ。
(SetNumはMyAppクラス内なのね。)
これだからpythonはw
127:114
07/03/01 01:47:35
>>124
ありがとうございます。こういう参考に出来るコードがあればと思っていたところでした。
ぱっと見まだよく分からないんですが、参考にさせてもらいます。
128:デフォルトの名無しさん
07/03/01 13:20:33
>>126
すぐに気づけてよかったね。
これだから(ry
129:デフォルトの名無しさん
07/03/01 16:19:36
Winでテキスト表示が場合によって問答無用でCour何とかいう2k/XPでFontlinkしないと日本語化けるフォント使わないように直ったんですか?
130:デフォルトの名無しさん
07/03/01 16:36:26
>>129
日本語でおk
131:デフォルトの名無しさん
07/03/01 20:30:47
おれのエスパー能力で解析すると、
「Windowsでテキスト表示のフォントが変わったんですか?」
らしい。
132:デフォルトの名無しさん
07/03/02 00:17:04
変わるわけねーよ外人だもん。日本語が自分たちのフォントで表示できないことも知らないよ。
133:デフォルトの名無しさん
07/03/02 00:54:12
俺もエスパーなんだけどunicode使わないようにすれば解決する
134:デフォルトの名無しさん
07/03/02 03:27:05
エスパーだけど非Unicodeにするとたちまち駄目文字問題が出る。
予言だけど本気でコレの作者に中国人なり日本人なりが頼まないと未来永劫にわたって変更はない。
135:デフォルトの名無しさん
07/03/02 11:08:47
CourなんとかってCourierのことだな
文字化けしないフォントを使わなくなったのならいいんじゃないか
ちなみにエスパーだけど
136:デフォルトの名無しさん
07/03/02 13:12:04
じゃあ俺もエスパー。
137:デフォルトの名無しさん
07/03/02 23:17:02
きてます。きてます。
138:デフォルトの名無しさん
07/03/03 19:44:35
質問です。SpinCtrlとSliderをセットにしたコンポーネントを作りたくて、
次のようなクラスを作ったのですが、Sliderを動かしたらその値がSpinCtrlに反映させるようにイベントを作ろうとしても上手くできません
.hで
enum
{ SliderPage_Slider = 100, };
class SliderAndSpinCtrlSet: public wxBoxSizer
{
public:
SliderAndSpinCtrlSet(wxWindow *parent, const wxString& title, int sliderID, float val, float min, float max, int spinCtrlID) : wxBoxSizer(wxHORIZONTAL)
{
m_slider = new wxSlider(parent, sliderID,
val, min, max ,
wxDefaultPosition, wxDefaultSize, 0);
m_spinctrl = new wxSpinCtrl(parent, spinCtrlID, wxString::Format(_T("%d"), val),
wxDefaultPosition, wxDefaultSize,
0,
min, max, val);
Add(m_spinctrl, 0, wxALL | wxGROW, 5);
Add(m_slider, 0, wxALL | wxGROW, 5);
}
void OnSlider(wxScrollEvent& event) { hogehoge... }
として、.cppで
BEGIN_EVENT_TABLE(SliderAndSpinCtrlSet, wxBoxSizer)
EVT_COMMAND_SCROLL(SliderPage_Slider, SliderAndSpinCtrlSet::OnSlider)
END_EVENT_TABLE()
としたのですが、エラーになりました。wxBoxSizerにはsm_eventTableなどを持っていないのが原因という事は分かったのですが、代替案が見つからず困っています。
どなたか上手いやり方をご存じないでしょうか?
139:デフォルトの名無しさん
07/03/04 02:38:55
wxPanelとかから継承したら?
140:デフォルトの名無しさん
07/03/04 03:13:20
>>139
wxPanelだと、独立したウィンドウになってしまいませんか?
ウィンドウ内のコンポーネントとして配置できるような、SpinCtrlとSliderをセットにしたものを作りたいのですが・・・。
141:デフォルトの名無しさん
07/03/04 12:29:07
最近wxWidgets忘れてるのでとりあえず思い付いたことを適当に書く
- wxEventHandlerを継承してないとイベント扱えないのでは
- DECLARE_EVENT_TABLE必要
まあとにかくEvent Handling Overviewくらいは読めと。
142:デフォルトの名無しさん
07/03/04 13:08:40
>>141
wxEvtHanderを継承してみました。
.hで
enum
{ SliderPage_Slider = 100, };
class SliderAndSpinCtrlSet: public wxBoxSizer, wxEvtHandler
{
public:
SliderAndSpinCtrlSet(wxWindow *parent, const wxString& title, int sliderID, float val, float min, float max, int spinCtrlID) : wxBoxSizer(wxHORIZONTAL)
{
m_slider = new wxSlider(parent, sliderID,
val, min, max ,
wxDefaultPosition, wxDefaultSize, 0);
m_spinctrl = new wxSpinCtrl(parent, spinCtrlID, wxString::Format(_T("%d"), val),
wxDefaultPosition, wxDefaultSize,
0,
min, max, val);
Add(m_spinctrl, 0, wxALL | wxGROW, 5);
Add(m_slider, 0, wxALL | wxGROW, 5);
}
void OnSlider(wxScrollEvent& event) { hogehoge... }
DECLARE_EVENT_TABLE()
};
として、.cppで
BEGIN_EVENT_TABLE(SliderAndSpinCtrlSet, wxEvtHander
EVT_COMMAND_SCROLL(SliderPage_Slider, SliderAndSpinCtrlSet::OnSlider)
END_EVENT_TABLE()
としてみましたが、コンパイルは通るものの、スライダーを動かしても何の反応もありません。
どうすればいいんだ・・・。Event Handling Overview今読んでいますが、難しいですね・・・。
143:デフォルトの名無しさん
07/03/05 00:42:03
多分、コントロール自身かその親ウィンドウじゃないと、
コントロールからのイベントが到達しないんじゃない?
やっぱ、wxPanel継承して、そのハンドラで受けるのがいいと思う。
そのPanelをひとつのコンポーネントとしてとらえればいいわけだし、
他パネルに配置もできるでしょ?
どうしても嫌なら、wxEvtHandler継承で、
m_slider->Connect(
SliderPage_Slider,
wxEVT_COMMAND_SLIDER_UPDATED,
wxCommandEventHandler(SliderAndSpinCtrlSet::OnSlider),
NULL, this);
とすればできる気がする。動作確認してないけど。
144:デフォルトの名無しさん
07/03/05 10:28:39
>>143
wxPanel継承でできました!ありがとうございます。
というかwxPanelをコンポーネントとして配置できる事を知りませんでした。
まだ使い始めたばかりなもので・・・。
145:デフォルトの名無しさん
07/03/08 10:54:48
質問です。
ウィンドウを二つ表示しているんですが、
片方で何らかの操作をした結果の値を、もう一方のウィンドウ上に配置したスライダー
等のコンポーネントにリアルタイムに反映させたいのですが、何か方法はないでしょうか。
具体的に言うと、片方はwxGLCanvasを継承したクラスで、その画面上をドラッグすると
ある値が変わるのですが、ドラッグ中にもう一方のウィンドウ(wxPanel)上の
スライダー等の表示をその値を反映したものにリアルタイムに更新したいのです。
しかし、ドラッグ中にスライダー等にSetValueで値をセットしても、そのウィンドウに
フォーカスが移動するまでスライダー等の表示が更新されません。
仕方が無いのでドラッグ中にwxPanelのSetFocus()メソッドを呼んで無理やり更新させていますが、
なんか気持ち悪いです。
他に方法はないでしょうか。
146:デフォルトの名無しさん
07/03/08 11:02:26
>>145
すみません。自己解決しました。
Update()関数で更新できました。お騒がせしました(汗)
147:デフォルトの名無しさん
07/03/10 00:07:38
wxPanelのサイズを実行時に変更するにはどうしたらいいでしょうか?
148:デフォルトの名無しさん
07/03/10 00:35:21
実行時に変更じゃわかんねーな
実行後に変更か?それともコンパイル時に指定か?
149:デフォルトの名無しさん
07/03/10 00:41:52
コンパイル時ではなく,アプリケーションの実行時です.
読み込んだ画像の大きさに合わせて変更するような感じです.
言葉足らずですいません..
150:デフォルトの名無しさん
07/03/10 01:14:44
wxWindow::SetClientSizeかなあ
151:デフォルトの名無しさん
07/03/10 01:15:07
wxImage image("foo.jpg");
panel->SetSize(image.GetWidth(), image.GetHeight());
みたいな感じでいいんじゃない?
152:デフォルトの名無しさん
07/03/18 22:42:36
みなさん。
wxFrameにwxGLCanvasセットしているときって、
なぜかwxMessageBoxの表示が全面に出てこなくて、wxFrameを最小化するか、クイック起動の「デスクトップを表示」をするかしないと、
wxMessageBoxが現れなかったりしませんか?
ちなみに当方wxWidgets1.6.3使用。
1.8.2だと治ってるかなぁ・・・。
153:デフォルトの名無しさん
07/03/19 08:48:42
>>152
2.8じゃなくて?
154:デフォルトの名無しさん
07/03/19 09:16:38
>>153
そうでした。2.6.3使用で、2.8だと直ってるかな、でした。
155:デフォルトの名無しさん
07/03/29 09:01:33
Mac の wxPython で使ってみてるんだけど、
wx.DC.GetTextExtent() がラテン文字以外は正しい幅を返してこないようだ。
Windows だとちゃんととれるのに。
これはどこの問題なんだ?
156:デフォルトの名無しさん
07/04/03 17:10:57
wxWidgetsの問題.諦めよ.
157:デフォルトの名無しさん
07/04/03 17:52:33
べつに諦めなくても自分で書いて送りつければいいんだけどね。
結構反応はやいよ。時々永遠に放置されるけどw
実装具合はポートによって様々。
一応実装されていても細かいところで違っていて、それを吸収する
クラスを書かないといけないこともある。
158:デフォルトの名無しさん
07/04/04 16:41:07
URLリンク(groups.yahoo.co.jp)
日本語版メーリングリストが無いから作っといた
テンプレにいれといて
159:デフォルトの名無しさん
07/04/07 00:08:15
なぁなぁ
wxWidgetsってさ、UTFの扱いどうなってるな?F8とか押すとさ、たまーにゴミ文字列
挿入されるんだがあれまじキレそうになるからなんとかしたいんだけど
どうすればいい?
160:デフォルトの名無しさん
07/04/07 00:49:26
コンパイラをUnicodeにすればいいんでない?
161:デフォルトの名無しさん
07/04/07 01:42:17
155だけど、日本語のフォントにしたら日本語についてはちゃんと取れた。
フォントのフォールバックが起こると取れなくなるみたい。
157のいう実装上の差異というところか。直せるのかな。
wxMAC のソースをちょっと覗いてみたら、元のAPIの仕様でそうなってるようにも見える。
Mac 詳しくないのでわかんないけど。
wxて Unicode や XML に詳しい人がコアにいないんじゃないかと思うことがある。
XRC の文法もなんか素人くさいよね。size をリテラルとして指定するとことか。
Uniscribe や TextLayoutManager(だっけ?)相当の機能がつくといいんだけどな。
ワイド文字列でコンパイルしただけじゃUnicode対応とはいえなかろう。
でも古典的な範囲でふつうに使ってる分にはやりやすい。嫌いなわけではないのよ。
あとインプットメソッドまわりは日本人がやらないと絶対始まらないと思うぞ。
162:デフォルトの名無しさん
07/04/07 10:10:45
ソース見てきた。Unicode実装してない
嘘Unicode絶対間違って実装してるからバグバグになる。
最悪buffer overflowとかも平気でありありな実装で
こいつら死ねよって今からメール送りまくろうと思ってます。
メインの開発者全員にしねよねハゲゴルァメールを送りつけて気を引き締めて
あげたいであります。
163:デフォルトの名無しさん
07/04/07 23:49:22
>>162
そんなことよりパッチ送ってやれ。
どーせ理解できねーんだから。
164:デフォルトの名無しさん
07/04/08 04:19:49
ソース見てないけど
Unicodeが問題になることといえばコードの上下関係だけじゃないの?
日本語をソートするとばらばらになるとかでしょ
基底はWindowsAPIをUnicode版に切り替えるだけだから切り替えミスでもしてない限りはOverFlowはないと思うけど
切り替えしてないならアフォだけど
LinuxとMacは単純にUnicodeAPIが無いから非対応という話ではないのか?
ちなみに一からlinuxやMacでUnicode作ろうと思ったら全部書き換えないと無理だろ
165:デフォルトの名無しさん
07/04/08 07:36:26
>>164
>LinuxとMacは単純にUnicodeAPIが無い
UnicodeAPI って何だよw
もしかして Windows 以外では UTF-8 とか 16 とか弄れないと思ってるの?
166:デフォルトの名無しさん
07/04/08 13:27:31
kernelレベルでデフォルトキャラセットをUnicodeにしないと無理でしょ
167:デフォルトの名無しさん
07/04/08 14:31:15
ふぅん、カーネルレベルねぇ...
デフォルトキャラセットとな...
全部書き換えないと無理と...
Linux も Mac も使ったこと無いのに色々知ってるんだ
偉いねえ
168:デフォルトの名無しさん
07/04/08 16:54:12
Unicodeはkernelレベルでサポートするべきものだったんだよ!
169:デフォルトの名無しさん
07/04/08 16:55:32
な,なんだってーっ!
170:デフォルトの名無しさん
07/04/08 17:47:29
>>168
当然そうあるべきだと思うが。
ファイルシステムやカーネルオブジェクト等に使われる名前の
エンコーディングに一貫性が無いとロクなことにならない。
名前のエンコーディングが不明では、文字列として正しく処理をしようが無い。
一方名前にエンコーディング情報も付与することにしたら無駄に
データ量が増えインタフェースも複雑化するだけ。
だから、Windows NTやPlan 9はUnicodeだよな。
Unixが時代遅れなだけ。
171:デフォルトの名無しさん
07/04/08 17:59:31
一応書いておくと、カーネルモジュールでもファイルシステムとかは
Unicode 扱えないとちょっとダサイ。でもこれはユーザランドのアプリ
とは関係無い話。
172:171
07/04/08 18:04:28
スマン。ボーッとしてたら被った。
>>170
"カーネルオブジェクト等に使われる名前" って何?
ASCII Code の範囲を超える文字を使うケースってあるの?
つか、カーネルモジュールで Unicode サポートが必要なのって
ファイルシステムだけだよね? そして普通の Un*x なら kiconv
とか(似た様な名前の)機構が既に入ってるよね?
>>170 が時代遅れなだけ?
173:171
07/04/08 18:12:33
最後ちょっと下らない煽りっぽくなっちゃったが、カーネル内で実装されていようがいまいが、
ユーザランドのアプリで Unicode を使うには全く問題無いよ。全部書き換える必要なんて
全く無い。それと Mac も Linux もデフォで Unicode 使えるようになってるので、その意味
でも問題無い。
174:デフォルトの名無しさん
07/04/08 18:35:28
いや別にネットからダウンロードしたUTF-8の文字をバッファにいれてカーネルEUCの状態で表示しようがしまいが勝手だし
そのためのクラス郡はwxWidgetsに用意されてるのだから好きにすればいいのでは?
今の話ってそういう話じゃないよね
Unicodeの入ったバッファの中身をEUCのAPIにパスして文字が化けるんですけどとかそういうこと言ってんでしょ?
そりゃ当たり前だって言ってるだけw
175:デフォルトの名無しさん
07/04/08 18:40:56
strcpyとかstrlenとかAPIだよ
Unicodeの中身そのまま渡したらおかしくなるって
176:デフォルトの名無しさん
07/04/08 18:42:08
>>174
>EUCのAPI
もっとくやしく。
177:デフォルトの名無しさん
07/04/08 18:51:32
Windowsは2個用意してる
strcpyだとstrcpyAとstrcpyWと2種類のAPIが存在してコンパイルする時に何をベースにプログラムを動かすかで
自動的に切り替わるようになってる
linuxやMacはこういう機構が無いのだから完全にカーネル依存になる
基本的にカーネルの扱う文字コード以外ではコンパイルしてはいけない
別の文字コードを扱う時はバッファ内で変換してからすべての処理に引き渡すようにしないといけない
178:デフォルトの名無しさん
07/04/08 19:26:12
>カーネル依存になる
だから、ならねっての。
C/C++ の標準ライブラリとカーネルの話をごっちゃにしてるね。
ついでに言うとロケールについても分かっちゃいない。
179:デフォルトの名無しさん
07/04/08 19:40:11
kiconvって、kernel内部コードをUTF-8で統一
全てのシステムコールの界面でLC_CTYPEを使ってchar*のエンコード変換を
行うと解釈していいのかな?
それならWindowsの動作に近いんだが。
いや、kernel側にはユーザ側のLC_CTYPEは分からないか。
むしろシステムコールにラッパーかませるべき?どういう実装になってるの?
180:デフォルトの名無しさん
07/04/08 19:44:56
話が全然噛み合ってねえな…
181:デフォルトの名無しさん
07/04/08 19:45:09
>>177
> strcpyだとstrcpyAとstrcpyW
1. 存在しません。
2. strcpy()はWindows APIではなくC標準のランタイムライブラリです。
3. MSVC++はC標準ランタイムライブラリに対しても、TCHARベースの
汎用テキストマッピングの仕掛けは提供しています。
strcpy()の場合は、_tcscpy() -> strcpy() / wcscpy()です。
182:179
07/04/08 19:47:41
よくわからないんだけど。
kiconvってカーネルパッチでしょ?
コールゲート通過後の、カーネル空間に入っちゃったただのchar*のデータを
どうエンコード変換すべきか、どうやって判断してるんだ?
Windows APIの場合は、APIのレイヤで全部UTF-16にしてるよ。
その層だと判断できるし、カーネル内部がUTF-16に閉じてクリーンになるから。
183:デフォルトの名無しさん
07/04/08 19:51:06
ネット斜め読みしただけで分かった風に書くなよ…
184:179
07/04/08 19:56:40
>>183
単純な話なんだから、分かってるのなら答えて欲しいんだけど。
・マルチユーザシステムであるUnixでは、ユーザ毎にLC_CTYPE設定が異なり得る。
これが前提。
・何もしなければ(少なくとも昔のUnixでは)システムコールにchar*を渡せば
それは「そのまま」kernelに素通しで渡るはず。つまり、一貫性の無い
異なるエンコーディングの名前がkernelに渡されることになる。しかも
kernelに渡ってしまった後はそのエンコーディングを判断するすべが無い。
ユーザモードで呼ばれるシステムコールのCインタフェース(ラッパ)には
呼び出し側プロセスの環境のLC_CTYPEが分かっているので、多分ロケールに
従った変換をかけるならここがベストである、ように俺には見える。
で、
・↑のような変換を行うシステムコールラッパの仕掛けなんですか
・kernel内部はUTF-8で統一されているのですか
というのが質問。
間違っているのなら、どこがどう間違っているのか説明してほしい。
185:デフォルトの名無しさん
07/04/08 20:09:41
>>184
何つーかさ、↓こういう質問が出る時点で答えるのを躊躇しちゃうのよ。
>・kernel内部はUTF-8で統一されているのですか
正直、君のレベルに合わせて回答を作るのは「単純な話」じゃないと思うよ。
誰にとっても。
186:179
07/04/08 20:13:21
>>185
>・kernel内部はUTF-8で統一されているのですか
なぜ、この疑問がそんなに問題なの?
Windows NTは、kernelが扱う「名前」「テキスト」は、全てUTF-16だよ。
kernelの扱う名前のエンコーディングに一貫性が無いと、例えばファイルシステム
のファイル名のエンコーディングが統一されていないと、問題でしょ?
UTF-16に統一することで、そのような問題を避けつつ、ASCIIよりはるかに
大きな文字集合を無問題に扱うことが出来ているわけ。
少なくともWindowsでは。
無論ファイルの中に入っていたりネットワークを流れるデータ(バイト列)の
具体的な中身にはkernelは関与しないよ。それはユーザレベルの話。
187:179
07/04/08 20:19:48
例えば
fd = creat(filename, 0666);
を実行した時に、
1) filenameはどこかでUTF-8に変換されますか
2) それはどこで行われますか
3) 変換されないならば、「全ての」ユーザコードが「各自」適切な
エンコーディングを指定しない限り、
ファイルシステムのエンコーディングの一貫性は保障されないということで
良いですね。
ということなんだが。
188:デフォルトの名無しさん
07/04/08 20:31:18
>>186
前にも書いたけどさ、符号化方式はファイルシステム固有の話であって
「カーネル内部で統一」という言い方はおかしいよね?
単に一個のカーネルモジュールに過ぎない訳だから。
君も一応マイクロカーネルな OS 使ってるんでしょ?
これはオケ?
189:179
07/04/08 20:52:19
>>188
・非Unicodeの符号化形式を採用しているファイルシステムは、それだけで
i18n/m17n対応においてUnicodeベースのもの(FAT32やNTFS)より劣ると
いわざるを得ないだろう。
・ファイルシステムが非Unicodeの符号化形式を用いている場合、ファイルシステムの
モジュールなりドライバなりが、相互変換を行うべき。そしてその層に
それが閉じているならば、カーネルとしてはUnicodeで考えることが出来るので
「統一」と呼べるのでは。
統一されていれば、異なるファイルシステム上の名前を比較したり、ファイル
システム間で名前をコピーすることの問題も無くなるし、
ユーザの実行環境のロケールが何であろうと、そのロケールとの相互変換を
どこかのレイヤが行いさえすれば、問題なくファイル名を取り扱うことが出来る。
・今きづいたのだが、ファイルシステムの符号化形式との間の決めウチ変換を
行うのがkiconvの役目?もしかして。
だとすれば、それだけではWindowsの提供する環境より
随分劣るといわざるを得ない。
190:デフォルトの名無しさん
07/04/08 20:57:58
相変わらず、話が全然噛み合ってねえな…
191:179
07/04/08 21:10:05
>>187のような単純な質問には誰も答えてくれないの?
filenameの中身がUTF-8エンコードされていないなら、結局どうなるの?
1) EILSEQエラーなどではじかれる。
2) 普通にテキストと解釈できないへんな名前のファイルが出来る。
3) プロセス実行環境のLC_CTYPEに応じて、UTF-8に誰かが変換してくれる。
4) ファイルシステムに甚大な被害を及ぼす可能性がある。
192:デフォルトの名無しさん
07/04/08 21:14:45
>>191
何答えても屁理屈こねられそうだからみんな嫌がってんだよ。
193:デフォルトの名無しさん
07/04/08 21:15:33
>>187
1. いいえ
3. はい
194:デフォルトの名無しさん
07/04/08 21:16:49
>>191
2
195:デフォルトの名無しさん
07/04/08 21:17:24
↓勝ち誇った書き込みキター
196:179
07/04/08 21:19:08
>>192
具体的に俺の「どの」発言が屁理屈なの。
誤っている箇所があるなら指摘してくれよ。
俺はそもそも屁理屈をこねるほど最近のLinuxのことを知らないから、
聞いてるだけなんだが。
197:デフォルトの名無しさん
07/04/08 21:21:54
>>196
↓これ
>>189
>・ファイルシステムが非Unicodeの符号化形式を用いている場合、ファイルシステムの
> モジュールなりドライバなりが、相互変換を行うべき。そしてその層に
> それが閉じているならば、カーネルとしてはUnicodeで考えることが出来るので
> 「統一」と呼べるのでは。
> 統一されていれば、異なるファイルシステム上の名前を比較したり、ファイル
> システム間で名前をコピーすることの問題も無くなるし、
> ユーザの実行環境のロケールが何であろうと、そのロケールとの相互変換を
> どこかのレイヤが行いさえすれば、問題なくファイル名を取り扱うことが出来る。
198:179
07/04/08 21:22:24
>>193, 194
教えてくれてあんがと。
んじゃ、問題ないとか言い切ってる>>171は勇み足さんかな。
事実上そのUTF-8対応したLinuxとそうでない従来型ロケールベースでは
運用方法から何から全然変わってこない?
皆が皆UTF-8に移行してるわけじゃないでしょ?
どっちでも動くプログラムとか書くの、面倒じゃないの?
199:デフォルトの名無しさん
07/04/08 21:25:00
>>198
>>>171は勇み足さんかな。
勝手にあんたの持論に巻き込むな。
200:デフォルトの名無しさん
07/04/08 21:31:09
>>198
>事実上そのUTF-8対応したLinuxとそうでない従来型ロケールベースでは
>運用方法から何から全然変わってこない?
誰か俺にも分かるように翻訳してくれ。
201:179
07/04/08 21:42:51
>>200
非UTF-8カーネルでユーザ毎にLC_CTYPEが異なる昔ながらのL10N環境と、
カーネルからユーザロケールまでUTF-8を前提とした環境と、
UTF-8カーネルに従来型ロケールの環境では、
ユーザコードでiconv()やwcstombs()等を用いた変換が必要な箇所が
変わってくるんでは?と思ったんだけど。
気のせいだというのならいい。
202:179
07/04/08 21:43:50
>>197
えーと、俺は見ての通り頭が悪いし最近のLinuxのことは知らないので、
誤りはもっとピンポイントかつ具体的に指摘してくれると嬉しいのですが。
203:デフォルトの名無しさん
07/04/08 21:54:41
>>202
> 誤りはもっとピンポイントかつ具体的に指摘してくれると嬉しいのですが。
スレ違い
204:デフォルトの名無しさん
07/04/08 23:46:39
よくある逃げ方だな。
ごくろーさんw
205:デフォルトの名無しさん
07/04/08 23:52:15
↑捨て台詞キター
206:179
07/04/09 00:00:11
>>204は俺ではないですよ。どうでもよいことですが。
207:デフォルトの名無しさん
07/04/09 00:54:49
で結局
EUCベースのlinuxでwxWidgetsでUTF-8を用いたアプリを開発するにはどうすればよいかという話でしょ
1.wxWidgetsが馬鹿なので書き換える
2.アプリをEUCで作る
3.linuxをUTF-8に対応させる
さあどれだw
208:デフォルトの名無しさん
07/04/09 00:57:38
話の発端はwxMACだっけ
ということはMACのカーネルは何のコードがデフォなんだ?
209:デフォルトの名無しさん
07/04/09 01:32:03
わかってもいないし調べる気もない奴らばっかだということはよくわかったから
もうここで続けるな。どこか他所でやってくれよ。
210:デフォルトの名無しさん
07/04/09 01:55:55
>>193-194を見る限り、
$ touch ほげ
とかやった場合、要するにロケール設定によって全然別の名前のファイルが
作られるわけか?
なんかもう脳死してるっていうか、どうしようもないんじゃねぇのこれ
211:デフォルトの名無しさん
07/04/09 02:04:26
wow wxWidgetsの話はどこに行ったのさ?
212:デフォルトの名無しさん
07/04/09 02:04:34
つか、非ASCII文字を含むファイル名を表示するまともな方法、存在すんのか?
ほげ:sjis
ほげ:euc-jp
ほげ:utf-8
みたいなファイル名が混在し得るんでしょ?
一つのファイルシステムに。
213:デフォルトの名無しさん
07/04/09 02:28:20
>>211
readdir()やftsを使ってで読み取ったファイル名のリスト
をリストボックスか何かに表示したいです。
どうするのが正しいのでしょうか。
214:デフォルトの名無しさん
07/04/09 02:41:11
WindowsだってeucとかUTF-8のファイル作ろうと思えば作れる罠
215:デフォルトの名無しさん
07/04/09 02:45:52
リストボックスは当然ながらKDEとかGNOME依存でこれらは結局kernelの文字コードにあわしてある
kernelがEUCなら当然XシステムもEUCでフォントデータベースもEUCだからEUCのフォントインデックスじゃないと
いわゆる文字化けした状態になる
216:デフォルトの名無しさん
07/04/09 02:56:42
>>215
> kernelの文字コード
> kernelがEUCなら
いみが
わかりません。
Linuxでは、文字エンコーディングを指定してカーネルを再構築するのでしょうか?
それによって、具体的にkernelの何が変わるのですか?
Unixはマルチユーザシステムですが、他のLocale設定を使いたいユーザは
どうすればよいのでしょうか?
217:デフォルトの名無しさん
07/04/09 03:06:44
>>214
「やろうと思えば出来る」のと、「通常の使用でそういう事故が起きる」
のとでは、当然ながら全然違うんだが。
WindowsのコードページはUnixのロケールほど揮発性でも動的でもないし、
むしろ日本語Windowsなら実質CP932決めウチ、みたいな世界だ。
そしてAnsi版APIは、APIレベルでUTF-16への変換を試みるから、そこで
妙な名前はガードされる。
Unicode版APIは素通しだけどな。CreateFileW()にUTF-16として
正しくない並びの文字列を渡してもそのファイルを作れてしまうのは確か。
ただし、「ユーザが」「普通に」使用していてそういう事態に陥ることは
まずない。
218:デフォルトの名無しさん
07/04/09 03:55:56
>>215
もうそのネタを引っ張るのは無理でしょ。流石にフォントの並びは変わらねえw
「カーネルの文字コード」という概念は個人的に破壊力抜群だったけどww
「EUC ベースの Linux」は後々まで語り継がれる名言だったなwww
釣り、なんだよね?
219:デフォルトの名無しさん
07/04/09 04:06:30
また過去においては Linux の C Library にはロケール機構の実装は行われて
おらず X Window System の提供するロケール機構を使用していた。近年になっ
て X のロケールから GNU C Library version 2 に実装されたロケールへの移
行が進んでいる。残念ながら現時点では日本語をはじめとする多バイト文字の
ロケール機構は機能していないが実装作業が進行中であり、近日中に利用可能
になるものと思われる。
220:デフォルトの名無しさん
07/04/09 04:20:33
>>210,>>212,>>217
Windows だって一緒やがな。メールに添付されたファイルのファイル名が EUC-JP
だったら誰が valid なファイル名を探してくれるのでしょうね。zip に入っていたファイルの
ファイル名が UTF-16 のエンディアン違いだったらどうするのかな?
スレ違いなんで↓続きはこっちでやってね。
文字コード総合スレ part2
スレリンク(tech板)
>>219
残念ながらそのネタも面白くないと思われるよ。
221:デフォルトの名無しさん
07/04/09 04:49:56
>>220
ちゃんと規格確認してから言ってる?
特定の実装の問題を全体に拡大解釈するなよ
222:デフォルトの名無しさん
07/04/09 05:18:41
>>221
規格って、zip に入れるファイル名の文字コードの規格があるの?
特定の実装って何の実装の事?
実際には Linux だってわざわざファイル名に複数の文字コードを混在させて使おうと
する人間はいない。混在可能ってだけだし、それは Windows でも一緒。
223:デフォルトの名無しさん
07/04/09 05:35:45
知識自慢ばっかで解決策を語れるスマートな人間はまったくいないな
wxWidgetsのソースをいじるなんてのは非現実的だし
ロケールをわざわざUnicodeに変換したって既存のソフトが動かなくなるだけ
答えは1つ、デフォルトロケールにアプリを合わせて自前でコード変換するだけ
それ以外の方法はない
それ以外の方法しか考えられないやつはただの馬鹿
224:デフォルトの名無しさん
07/04/09 05:38:24
知識自慢というか、正しい認識を持つことは重要だよ。
で、何の解決策が必要なんだっけ?
225:デフォルトの名無しさん
07/04/09 06:06:24
ボケ老人は無理して話に加わらなくていいのに・・・。
226:デフォルトの名無しさん
07/04/09 06:51:00
> zip に入れるファイル名の文字コードの規格があるの?
zip に入れるファイル名の文字コードの規格はないの?
227:デフォルトの名無しさん
07/04/09 07:26:40
無い
228:デフォルトの名無しさん
07/04/09 08:08:56
無いよなぁ…
229:デフォルトの名無しさん
07/04/09 08:11:09
>>223
>wxWidgetsのソースをいじるなんてのは非現実的だし
ノンサポートのライブラリなんだから、きちんと全容を把握して
自分で手を入れられるようになっておいた方が良いぜ。
230:デフォルトの名無しさん
07/04/09 08:54:57
>>223
オープンソースなんだし常識じゃないの?
カーネルのソースも、wxWidgetsのソースも動作がおかしい場合は、
読んで修正しないとねぇ。
231:デフォルトの名無しさん
07/04/09 12:06:11
>>220
あのさぁ。メールの添付ファイルだのzipアーカイブの中身だのに含まれる
ファイル名をどうシステムのファイル名にマップするかってのは、
そのプロトコルなりRFCなりファイルフォーマットなりの話であって
OSの仕事ではないでしょ?
そこに不備があるのなら、それはOSでなくて、符号化形式が
self-containedではないそれらの不備ってだけだろ?
232:デフォルトの名無しさん
07/04/09 12:08:37
少なくともWindowsでは
単にシェルでファイルをとりあつかうだけのことで問題が生じることは無い。
ファイル名はUTF-16「である」のがWindowsだ。
Windowsのファイル名はコードページに依存しないし、コードページによらず
漢字や拡張ラテン文字を含むファイル名を同時に正しく扱える。
Linuxでは
$ >ほげ
とかやるとどうなるんだっけ?
233:デフォルトの名無しさん
07/04/09 12:36:11
スレ違いage
234:デフォルトの名無しさん
07/04/09 13:32:49
結局、>>213の答えは?
235:デフォルトの名無しさん
07/04/09 13:38:35
>>229
入れられるのと実際に入れるのとでは意味が違う
手を加えたらパッチが当たった時にまたそれに合わせて全部拾い出していくのか?
よっぽど暇なんですね
236:デフォルトの名無しさん
07/04/09 13:41:47
せっかくクロスプラットフォームで多くのチェックが入ってバランス統一されたものに
わざわざ手を加えてクロスプラットフォームじゃなくならせるなんてよっぽど馬鹿なんですね
237:デフォルトの名無しさん
07/04/09 17:45:41
>>234
見ればわかると思うけど、ここ能無ししかいないから
誰も答えられません。
238:デフォルトの名無しさん
07/04/09 18:26:14
じゃあお前が答えろよw
239:デフォルトの名無しさん
07/04/09 18:34:55
知識が無いことより、分かっている振りをすることのほうがはるかに馬鹿な事なのに
プログラマはそれがわからない馬鹿が多くて本当に嫌な人種だな
むしろ人間じゃねーな
240:デフォルトの名無しさん
07/04/09 20:18:26
>>231
そこまで書いたら自分で気付けよw
241:デフォルトの名無しさん
07/04/09 21:49:34
>>240
要するに、Windowsのファイル名はUTF-16固定だが
Unixのファイル名のエンコーディングに関しては、規約も標準も
何も無い無法地帯で、かつシステムグローバルでも何でもないLC_CTYPE
環境変数の設定でエンコーディングがころころ変わってしまい、
結果としてプログラム的にどうあるべき、という正しい判断のしようが無いから
糞なんだろ?
どこが「Windowsも同じ」なの?
Zipのようなファイル形式で困ったことになる点だけは確かに同じだな。
だが、それはOSの問題ではないし、論点ずらしだろ。
242:デフォルトの名無しさん
07/04/09 21:51:50
>>241
惜しい。あと一歩真実へ踏み出してみよう。
243:デフォルトの名無しさん
07/04/09 21:56:50
つづきまだ~?(チンチン(AAry
244:デフォルトの名無しさん
07/04/09 22:02:56
ちゃんと考えなきゃダメだぜ。
245:デフォルトの名無しさん
07/04/09 22:10:28
例えばプレーンなテキストファイルのエンコーディングは分からない
(符号化形式がselfcontainedでない)ってのはOSに限らない
普遍的かつ伝統的な問題なわけで、
ファイルの中のデータを扱う部分はどうしても汚い仕事にならざるを
得ないと思うのよ。典型的なのが日本語のエンコーディングの自動判別の
ようなヒューリスティック。
Unixの世界ではファイル名もこれと同じなわけだけど、Unicodeに
統一できるなら、したほうがいいに決まってるし、完璧ではないにしろ
それが可能な世界だと思うんだ。
Windowsではそうなってるわけでしょ。
246:デフォルトの名無しさん
07/04/09 22:18:35
少なくともWindowsでは、何かファイル名を外部からもらった時に、
それをOSに渡す際にはUTF-16に変換するのが「正しい」ことは分かる。
どうやったらUTF-8に変換できるのか分からないならば、それは貰い方、例えば
ファイル形式やプロトコル等に問題があると言うことが出来る。
それはWindowsの問題ではない。
Unixはそれ以前の問題。それが非ASCII文字を含む場合、どう扱うのが
「正しい」のかが全く分からない。
一般解は存在せず、環境・プログラム毎の特殊解のみがあるのだろう。
247:デフォルトの名無しさん
07/04/09 23:07:08
>>246
>どう扱うのが「正しい」のかが全く分からない。
どう扱うのが正しいのかを決めるのはユーザ様な世界なんだよ。
分からないんじゃなくて、勝手な決め打ちしないだけ。
全能なるユーザ様が入力なされた物を勝手に変換するなと。
"touch ほげ" の結果生成されるファイル名がロケール依存で
変化するのは UN*X 的に正しい世界。何故ならユーザ様が
ロケールを設定しているから。アプリはロケールに従ってデータを
読み出せば全く問題無い。これが UN*X 的な正しい扱い方。
入力には寛容に。
ファイル名のエンコードは一応それなりに決まっていて、HFS+
なんかは UTF-16 になっている。決まっているだけで EUC でも
書き込めるのは Windows と一緒だね。
248:デフォルトの名無しさん
07/04/09 23:26:45
UNIXの世界において、kernelのレイヤでは全て単なるバイト列。
\0と/は特別扱いやけどな。
エンコーディング等は、kernelの知・っ・た・こ・と・で・は・な・い。
249:デフォルトの名無しさん
07/04/09 23:39:55
正しいとか正しくないとか俺様理論は他でやってくれないか?
250:デフォルトの名無しさん
07/04/09 23:41:01
あのな\0が特別って\0だけで十分にエンコード依存なんだよ馬鹿
251:デフォルトの名無しさん
07/04/09 23:42:50
俺様理論っつうか、エンコードとかkernelの話は他でやってくれ
252:デフォルトの名無しさん
07/04/09 23:47:16
何度も言うけども
wxWidgetsを正常に使いたかったらわざわざロケールを変更するような暇なことしたり
wxWidgetsを自分好みに作り変えたりするのは馬鹿のすることだ
デフォルトロケールのエンコードにあわせるのが正当なやり方だ
Windowsの場合はSJISとUnicodeの両者が共存出来るようなうまいしくみがあるから選べるだけ
253:デフォルトの名無しさん
07/04/09 23:50:48
>>249
核心を突いたね。そう。単一の文字コードに決め打ちして正しいとか言ってるのは
俺様理論なんだよね。簡単に破綻するのにね。しかも UTF-16 だからなあ…
254:デフォルトの名無しさん
07/04/09 23:53:05
>>252
一生 Windows だけ使ってる分にはそれで良いと思うよ。
Microsoft 以外が出しているおかしな OS なんて使う必要無いよ!
255:デフォルトの名無しさん
07/04/09 23:57:45
どうせMACはバージョンによって文字コードが違っても互換性がないのだからw
UNIX系なんてそもそもバイナリ配布できるような環境にないだろw
どうせそのコンピュータでコンパイルして動かすのだからロケールなんて統一したほうがかえってややこしいことになる
コンパイル環境のロケールでそのまま動くように作ればいいだけ
問題になるのはスタティック文字列くらいなもん
256:デフォルトの名無しさん
07/04/10 00:02:38
オケ
257:デフォルトの名無しさん
07/04/10 01:07:07
また一人気違いが……。よそでやれ。
258:デフォルトの名無しさん
07/04/10 01:10:54
>>247
> "touch ほげ" の結果生成されるファイル名がロケール依存で
> 変化するのは UN*X 的に正しい世界。何故ならユーザ様が
> ロケールを設定しているから。アプリはロケールに従ってデータを
> 読み出せば全く問題無い。
touch ほげを実行したユーザが、ファイル名を読み取るユーザと同じとは
限らないのがUnixでしょ。読み取るプロセスはデーモンかもしれないし、
cronあたりから実行されているバッチかもしれない。
ftpやtelnet越しのユーザかもしれない。
実におめでたいね。
>>248
うん、それで?
結果として、単に非ASCII以外の文字を含む名前がひどく扱いにくい世界に
なったわけだよね。
時代遅れだね。
>>253
Unixの「自由」は欲しくない自由なんだよ。俺に言わせれば。
プレーンテキストどころか、ファイルの中の行毎にエンコーディングが
異なる、何がなんだか分からないファイルを考えてみればよい。論外だろ?
「自由」にしたいのなら、せめてエンコーディング方式が分かるようにしろと。
259:デフォルトの名無しさん
07/04/10 01:40:40
「議論」したいのなら、せめて該当するスレに移ってくれと。
260:155
07/04/10 02:18:16
ぎょえ。なんかすごいことに。
しかもなぜか関係ないファイル名の話になってるし…。
荒れるからもう Unicode の話はふらないよ…。
ゴメンネ。
261:デフォルトの名無しさん
07/04/10 08:24:38
>>258
それで問題無いよ。お仕着せが良いなら Windows を使っていれば良い話。
見掛け上の統一感に満足していれば良い。Windows が最高なんでしょ?
俺は、文字コードの揺らぎは常に存在するものである事を前提に、自分で
自由に制御出来る環境の方が優れていると思う。
いつだって他人の流儀を認められないのが Windows ユーザだよなあ。
ぬるい世界で満足しているなら、そこから出て来なければ良いのにね。
262:デフォルトの名無しさん
07/04/10 10:12:08
>>261
> いつだって他人の流儀を認められないのが Windows ユーザだよなあ。
イラッとして書いたんだろうけどこういうひとくくりにする発言はやめようよ。
使ってるOSの問題じゃないからさ。
263:デフォルトの名無しさん
07/04/10 10:58:01
イラッとして書いたんじゃなくて、そのあたりが>>261のレベルなんです。
あらゆるコミュニティから「お前は入ってこないで」と思われるタイプ。
264:デフォルトの名無しさん
07/04/10 12:29:12
こーゆー輩は他人を貶して優越感に浸りたいだけだから放って置いたほうが良いよ
265:デフォルトの名無しさん
07/04/10 12:43:38
>>261ね。
テクニカルな内容がほぼゼロ。本人の品性が良く分かる煽り文ですね。
> 俺は、文字コードの揺らぎは常に存在するものである事を前提に、自分で
> 自由に制御出来る環境の方が優れていると思う。
エンコーディング情報が正しく含まれるのならそれもいいだろうけど、
実際には、各行のエンコーディングがごたまぜ、何が使われているか分からない
テキストファイルも同然の状態なわけですよ。ファイル名が何でエンコードされてるか
どこにも記録されない上に、一貫性のある規約も無いのが現実。
自分の環境は自分の都合のいいように運用するからそれでおk?
あなたは仮にもプログラマでしょう?
趣味でLinuxいじってるだけのパソコンオタクじゃないんでしょ?
プログラマとしてコードを書くときに、自分の環境しか考えないの?
例えば「ゆらぎがあることを前提に」、あなたなら>>213のケースにどう
回答するの?
Windowsはあなたに言わせればぬるい環境で、Unixは優れてるんでしょ?
俺様環境でしか通用しない糞コードではなく、
素晴らしい回答を期待してますよ。
266:261
07/04/10 19:11:39
なんか変なのがまとめて沸いてきたなぁ。それとも同一人物か?
自分の痛さを指摘されて逆上した Windows ユーザ?
まぁ、まともなレベルのものが書けたら相手してあげるよ。頑張ってね。
267:デフォルトの名無しさん
07/04/10 20:25:50
自分が痛いとはこれっぽっちも思ってないらしいな(ワラ
268:261
07/04/10 21:00:09
痛くないから当然だな。
まともなことを言ってるのに「痛くてすみません」ってな態度を取るのは
謙虚でもなんでもない。ただ間違っているだけだ。
それにしても、本当に逆上してるんだな。
負け癖のついた議論好きってこんな感じなんだよな。
269:デフォルトの名無しさん
07/04/10 21:01:12
新着で100もレスついてるから何かと思えば…
270:261
07/04/10 21:07:58
馬鹿は一匹出てくると立て続けに何十匹も出てくるからな。
スレが無駄に伸びる伸びる。
271:デフォルトの名無しさん
07/04/10 21:10:27
>>266,>>268,>>270
お、俺がもう一人居る。あんたが >>261 だとすると、俺は誰だw
何にせよ >>261 の書き込みは破壊力抜群だったみたいで何より。
>>262 には悪い事したけど、まともな人はもう居ないと思ってた。
>>265
あんたプログラマだったの?
プログラマは平日昼間から 2ch やれて羨ましいなあ。
エンコーディング情報は環境変数からとって来るから良いんだよ。
あんたが思ってる様なカオスの世界では無いよ。
272:271
07/04/10 21:13:42
話を簡単にまとめると、エンコーディングが静的に決まっているのが
NTFS や HFS+(どちらも UTF-16) で、行儀の良いアプリであれば
そのエンコーディングに従って文字列を格納してくれる。勿論、zip
の例の様に、人間にとって valid な文字列を生成出来ない場合も
あるし、ファイル名が ASCII である事を前提に書かれたプログラム
も存在している。
一方で、エンコーディングが環境に合わせて変わるのが UNIX 方式。
ファイルシステムの数も扱うロケールの数も沢山あるし、OS 自体も
色んな種類があるので入力には寛容に作られている。行儀の良い
アプリならロケールを見てきちんとデータを変換してくれる。勿論
入力が ASCII のみを想定している様なプログラムもあって、8 bit
clean じゃないコマンドも残っていたりする。
どちらの方式でも言えるのは、人間にとって valid じゃない文字列を
生成するのは簡単だという事。valid じゃない文字列を生成する
プログラムが良いか悪いかは別として、そういうプログラムが存在する
事は間違いない。だとすると、エンコーディングを決め打ちして満足
しているのは抜けてるんじゃないかなあというのが俺の意見。
Windows な人が共感出来るかどうかは別として、論理としては理解
出来るように書いているつもりだけど、どうよ?
273:デフォルトの名無しさん
07/04/10 21:52:01
>>271
> エンコーディング情報は環境変数からとって来るから良いんだよ
環境変数はユーザ毎、プロセス毎、それどころかプロセス実行中にも
変化し得る揮発性のデータでしょ。実際、
$ LANG=C man foo
のように、一時的にLANGを変えてコマンドを実行するようなことは
日常茶飯事のはずだ。
環境変数が指し示すのはあくまで「プロセスの実行環境」であって、
「ファイル名が何でエンコードされているか」ではない。それらは
全く別のものなのに、一体それでなぜ「良いんだよ」と言えるのか。
・ファイル名のエンコーディング方式が固定化されているか
・ファイル名のメタデータとしてエンコーディング方式が取得/設定できるか
以外に正しい解は無いよ。そんなこと、分かりきってるだろうに。
274:デフォルトの名無しさん
07/04/10 21:57:11
>>272
> 論理としては理解出来るように書いているつもりだけど、どうよ?
あなたがUnix方式の穴/不備に故意に目を瞑っていることだけはよく理解できる。
そして、「完璧な方式など無い」と主張することで、そこから目をそらさせようと
しているわけだ。
1. エンコーディング固定化方式
2. エンコーディングが可変で、形式をメタデータとして保持する方式
を比較するなら分かる。
どちらにも得失はあるが、「まともな」やり方だ。
Unixはそのいずれでもない。可変で、形式情報が失われてしまう。
Zipと同じだよ。
275:271
07/04/10 21:57:12
>>273
ファイル名が何でエンコードされてるかは重要じゃない。
ファイル名のバイト列をどの文字コードで解釈したいと
ユーザが指定しているかが分かれば良い。
エンコードを決め打ちしても当然例外は発生するんだから
正しい解なんて存在しないんだよ。それに気付ければオケ。
276:デフォルトの名無しさん
07/04/10 21:59:53
もうちょっと論理的に頼むわ。
馬鹿でもいいから、限界まで頑張って。
277:271
07/04/10 22:00:13
>>274
>完璧な方式など無い
まさにその通り。それを認識する事が重要だよ。
そうすればもっと色んな考えに寛容になれるよ。
278:デフォルトの名無しさん
07/04/10 22:01:44
Windows方式は完璧ではないよ。無論。誰もそんなことは主張していない。
Unix方式よりずっとマシだ、といっているだけだ。
279:デフォルトの名無しさん
07/04/10 22:01:47
>>276
お前は >>261 なんだろ...
自分の役割を忘れるな
280:デフォルトの名無しさん
07/04/10 22:03:58
>>275
>ファイル名が何でエンコードされてるかは重要じゃない。
>ファイル名のバイト列をどの文字コードで解釈したいと
>ユーザが指定しているかが分かれば良い。
環境変数という荒くて大雑把な手段では、実際に個々のファイル単位に
エンコーディングを指定することは出来ないし、インタラクティブな
プログラムばかりではない。
問題が大きいのに相変わらず故意に目をつぶりまくっているな。
281:デフォルトの名無しさん
07/04/10 22:05:43
>>278
それなら君は Windows ユーザじゃないってことだ。
282:デフォルトの名無しさん
07/04/10 22:06:57
>>281
キミ、面白すぎ
Windowsマンセー、欠陥など一切認めないって信者以外はWindows使っちゃ
いけないのネ
283:デフォルトの名無しさん
07/04/10 22:09:28
>>282
物事を面白がれるのはいいことだと思うよ。
現実と架空の区別さえついていれば。
284:デフォルトの名無しさん
07/04/10 22:10:06
マルチバイト文字の2byte目の引き起こす下らない問題に
煩わされてきた日本人であるならば、
名前なんてただのバイト列でいいよ、エンコーディングなんてどうでもいいよ、
なんてことは言えない筈だぞ。
UnixとCの時代遅れな設計がいかに多くの下らない「日本語対応パッチ」のような
adhocな生産物を意味出してきたことか。
285:デフォルトの名無しさん
07/04/10 22:18:40
>>278
悪いけど俺にはとてもそうは思えないし、エンコード決め打ちなんて
俺の基準からすると作法がなっていない。
286:デフォルトの名無しさん
07/04/10 22:19:53
>>284
いいからしばらく黙ってろって。襤褸が出まくってる。
287:デフォルトの名無しさん
07/04/10 22:25:18
>>285
> エンコード決め打ちなんて俺の基準からすると作法がなっていない。
そういう「気分」「好み」でしか語れないのか?
技術者なら、Unix方式に比べてどういう具体的な問題・欠陥があるか語れよ。
288:デフォルトの名無しさん
07/04/10 22:27:47
>>287
散々書いたじゃん。今まで何読んでたの?
鬱陶しいから横から煽るのは止めてくれ。
あと >>284 みたいな見当違いの事書くのも勘弁な。
289:デフォルトの名無しさん
07/04/10 22:29:16
>>288
> 散々書いたじゃん
「Windowsも完璧ではない、Windowsも同じ」以上のことは書いてない気が
するが?
290:デフォルトの名無しさん
07/04/10 22:32:23
今ある環境を*肯定*して最大公約数的なものを
提供するのがwxWidgetsだと思うのだが。
OS批評がしたいならOS板に行ってくれないかな。
291:デフォルトの名無しさん
07/04/10 22:39:22
>>284はそんなに見当違いか?
テキストとバイナリを区別せずただのバイト列として扱うのが
伝統的なUnixおよびCの文化だ。
実際にはそうした愚直で単純なやり方ではマルチバイトテキストを
扱う上で大きな問題を引き起こす。
無論UnixおよびCでそうでないプログラムを書くことは可能だが、
それに対するサポートレベルがWindowsに比べて非常に低い。
Windowsはテキストを明確に区別する。ほぼ全てのテキストを受け渡しする
APIには、Ansi版とUnicode版が存在し、APIユーザ=プログラマは、
自分のプログラムに適したストラテジーによってそれらを使い分けることが出来る。
Ansi版を使う場合はUnixのロケールモデルに近くなり、それらの切り替えは容易だ。
正しくWindowsの作法に従って書かれたプログラムなら、OSに渡るテキストは
全てUTF-16だ。
そうした世界では、もともとm17n対応であり、SJISの2byte目が引き起こす
伝統的な下らない問題とも無縁だ。
ファイルシステム内のファイル名も一貫しており、どんなコードページで
実行していようが全てのファイルを正しく扱える。
テキストを意識し、テキストを正しく扱っているから出来ることだ。
Unixは「何でもあり」と一見自由のようなことを言っていて、
実際にはエラーを起こしがちで問題の多い解でしかないわけだ。
ちょうど行毎にエンコード形式の異なるテキストファイルのように。
292:デフォルトの名無しさん
07/04/10 22:41:05
>>291
ガンガレ
もっとガンガレ
293:デフォルトの名無しさん
07/04/10 22:59:47
>>289
書いて無くても書いたんだよ!
294:デフォルトの名無しさん
07/04/10 23:01:57
案外ここ住人いたんだなあ
なんだかうれしいよ
295:デフォルトの名無しさん
07/04/10 23:24:59
ここまで俺の自演
296:デフォルトの名無しさん
07/04/10 23:31:07
いやいや、オレオレ
297:デフォルトの名無しさん
07/04/10 23:40:31
VC++ 2005 express edision(無料のやつ)
で
wx_dll.dswをコンパイルすると
MessageBox@16が見つからないとかいうエラーが出てdllが生成されないんだけど
なんじゃこりゃ
298:デフォルトの名無しさん
07/04/11 00:27:41
普通の質問になると黙るのがワロス
299:デフォルトの名無しさん
07/04/11 01:16:44
ダメ文字と半端バイト、エンディアン、改行の扱いで問題なければ別にどうでも良いよ
……Windows&SJIS/UTF-16が苦手にするところだなぁ。WindowsもUTF-8(N)にならんかね?
300:デフォルトの名無しさん
07/04/11 01:22:32
>297
ちゃんとWindowsの開発環境整えてる?Platform SDKとか。
301:デフォルトの名無しさん
07/04/11 01:28:18
>>300
libがなかったらそれ以前にlibが無いってエラーが出るからね
その辺はちゃんとやってる
wx.dswのほういわゆる静的リンクは問題なくコンパイルできる
DLLのほうがだめ
302:デフォルトの名無しさん
07/04/11 07:49:05
>>299
どこでも UTF-16 は負の遺産と化してるね
303:デフォルトの名無しさん
07/04/11 12:00:37
Javaも.NETもTclもICUもUTF-16だけどな。
ファイルやネットワークで使用するデータ交換形式としては無論UTF-8が
望ましいが、マルチバイト処理を必要とするから、内部コードとして
使うにはUTF-32のほうがいいよ。
UTF-16はまぁ中途半端の観は否めないが、内部コードとして使っている分には
それほど大きな不満はないな。
内部コードとしてのUTF-8の問題は、マルチバイト処理を必要とするだけでなく、
全部char*になってしまうということ。これは一見単純で良いようだが、
Unicodeデータかどうかの識別がつきにくく、プログラミング言語の
オーバーロード機能なども利用しにくくなってしまう。
304:デフォルトの名無しさん
07/04/11 13:04:20
>>303
内部コードにUTF使うか?
エンディアン無視してUCSそのままだろ。
305:デフォルトの名無しさん
07/04/11 16:58:30
>>303
エンコーディングの問題とプログラミング言語の問題も分離できないくせに
偉そうなフリしてて笑えるw
306:デフォルトの名無しさん
07/04/11 17:35:01
ここは何のスレ?
307:デフォルトの名無しさん
07/04/12 19:06:05
ねぇ、2.6.3のサンプルでpenguinサンプルをビルドして動かしてみたんだけど、
ウィンドウを閉じようとしたら「ハンドルされていないエラーが発生しました」とかいうエラーが
出てしまう。他のOpenGL使うサンプルもみんなそうなんだけど、これってwxWidgetsのバグ?
308:307
07/04/13 14:14:50
>>307
原因がわかったぽい。
NVIDIAの提供しているデバッグ用ドライバだとエラーになるっぽい。
通常のGeForceドライバだとエラーにならなかった。
まさかドライバで動作が違うとはね。
309:デフォルトの名無しさん
07/04/13 21:16:38
wxPythonで使ってるんだけど、いわゆるショートカットキー(ホットキー)って
どうやって実装するの?
wxAcceleratorKeyはメニュー用のようだし、wxKeyEventはフォーカスされた
ウィンドウにしかトリガーしない。
リファレンスにもそれっぽい方法は見当たらなかったのだけど。
310:デフォルトの名無しさん
07/04/13 21:24:15
メニューのファイル(F)の"Alt+F"みたいなの?
それだったら"ファイル(&F)"でできるけど。
311:デフォルトの名無しさん
07/04/13 21:50:37
>>310
いや、違うだろ。
グローバルホットキーのことでしょ?
OS依存度高そうだな。
312:307
07/04/13 22:01:38
>>308
と思ったら、普通のGLUTアプリでもこけた。
こりゃwxWidgetsとは全然関係のない話で、単にドライバの仕様な予感。
スマンカッタ・・・。
313:309
07/04/13 22:18:52
>>311
それもだけど、当面はアプリケーションごとのCtrl+Zで取り消し、みたいなやつ。
wxMenu.Appendでitem="Undo\tCtrl+Z"とすればできるけど
これだとメニューを出せない場合に困るし、どうしたらよいものかと。
314:デフォルトの名無しさん
07/04/16 16:11:20
質問です。
条件によってUIを機能しない(ボタンだったら表示が薄くなって押せなくなる)ように
するにはどうすれば良いのでしょうか。
wxWidgetsのサンプルではEVT_UPDATE_UIというイベントを使っているようですが、
真似して試してみたところ上手く行きません。
315:デフォルトの名無しさん
07/04/16 16:31:43
Disable()
316:デフォルトの名無しさん
07/04/20 16:19:35
URLリンク(www.averdevelopment.com)
面白いの見つけた(windows限定みたいだし余り魅力的ではないかも…)
でも
dc = AggDC(wx.PaintDC(self))
b = aggBrush(self.dc.GetBrush())
p = aggPen(self.dc.GetPen())
みたいに使用するのは簡潔でいいと思うけど
def aggBrush(wxBrush):
def aggPen(wxPen):
を使うたびにどこかで定義しないといけないとか、これなら
素直にGDI+を使ったほうが良いかなという気もしないでもない。
というか日本語資料が一件しかないしな…
317:デフォルトの名無しさん
07/04/22 13:01:11
そんなもん使うことあるか?
ゲーム作るんならどにみちバッファ直接書いたほうが早いぞ
DirectXより早いぞ
318:デフォルトの名無しさん
07/05/05 02:07:54
誰か、コレを和訳してないかな?
Cross-Platform GUI Programming with wxWidgets
319:デフォルトの名無しさん
07/05/05 06:39:51
wxWidgetsによるプラットホーム非依存なグラフィカルユーザインターフェイスプログラミング
してみたけど。
320:デフォルトの名無しさん
07/05/05 11:16:14
ああ流石に寒いかなと思ってやらなかったのに…
321:デフォルトの名無しさん
07/05/05 22:59:17
だれか、これで2chブラウザつくらないのかな?
322:デフォルトの名無しさん
07/05/06 01:33:23
メリットは?
323:デフォルトの名無しさん
07/05/06 01:41:18
弱酸性です。
324:デフォルトの名無しさん
07/05/06 02:00:32
>メリット
ネタになるだろ?
だれかやって味噌~
325:デフォルトの名無しさん
07/05/06 02:25:38
C#の方が簡単だよ
326:デフォルトの名無しさん
07/05/06 02:48:26
>>324
ネタと言うか宣伝だわな
327:デフォルトの名無しさん
07/05/06 06:59:32
そんなあふれたもん作ってもしょうがないぽ
328:デフォルトの名無しさん
07/05/06 09:40:40
あふれた?
329:デフォルトの名無しさん
07/05/06 15:18:54
wxPythonなら Monarchってブラウザがあったらしい
URLリンク(monarch.sourceforge.jp)
330:デフォルトの名無しさん
07/05/06 18:26:03
輝けジャンケル(Woo! Ohowo!!)空高く(Owo!!)
技と力と心が通う ザビタン(hehe!!)
イビル(hehe!!)ガブラ(Woo!Ohooho!!)
うなれジャンケル! アクサイザー3!!
331:デフォルトの名無しさん
07/05/06 19:42:18
なんやねん
332:デフォルトの名無しさん
07/05/06 20:14:11
これの代わりになるものをみんなで作ろう!!
333:デフォルトの名無しさん
07/05/06 20:16:53
おちつけ!!!!
334:デフォルトの名無しさん
07/05/06 20:25:59
行く道ひとつ Ohowo!! ただひとつ
これが われらの 生きる道
アクサイザー!(Zanzan zazan!) アクサイザー!(Zanzan zazan!)
アクサイザー3!!
335:デフォルトの名無しさん
07/05/06 21:27:25
これって、あまり人気がないのか?
336:デフォルトの名無しさん
07/05/10 03:49:37
wxSocketBase::Callbackが2.8で完全に削除されてるけど
コマンドアプリでイベント処理する場合にはどうすれば?
自作クラスにイベントハンドラを作る方法ってあるの?
ちなみにプログラムの特性上スレッドは却下、同期処理も却下
337:デフォルトの名無しさん
07/05/10 04:31:27
EVT_SOCKET(id, func)
338:デフォルトの名無しさん
07/05/10 05:09:20
自己解決した
ふふり
339:デフォルトの名無しさん
07/05/11 20:01:03
みんなもっと使おうぜ!!
便利なんだから(?)
340:デフォルトの名無しさん
07/05/11 22:58:07
wxDateTimeについて
システムの時刻とアプリケーションの時刻を独立して管理したいんだけど
wxDateSpanとwxTimeSpanをwxDateTime::Nowに加算すればいいわけですね
問題はアプリケーションで管理すべき時刻とシステム時刻の差の計算はどうすればいいの?
wxDateSpanとwxTimeSpanを2個のwxDateTimeの差から計算するには?
341:デフォルトの名無しさん
07/05/11 23:24:29
あ、自己解決w
342:デフォルトの名無しさん
07/05/12 16:44:23
これ、人気ないですか?
343:デフォルトの名無しさん
07/05/12 20:18:49
どうしてそう思うの?
344:デフォルトの名無しさん
07/05/12 21:01:48
まだ何も思ってないのでは
345:デフォルトの名無しさん
07/05/12 21:53:13
中身が人気無いというより
コンパイルに数時間かかるし
ドキュメントはほとんど英語しかないし
容量が1G以上いくし
内部構造まで解析できないとバグと仕様の区別が付けられないから不安定だし
まあようするに厨房には無理w
346:デフォルトの名無しさん
07/05/12 22:33:32
メリットは何ですか?
347:デフォルトの名無しさん
07/05/12 22:47:36
環境に左右されない。
でも、コンパイルは各環境で行わないといけない。
MFCの代わり?
(似てるし)
348:デフォルトの名無しさん
07/05/12 23:51:09
>容量が1G以上いくし
まじっすか・・・
349:デフォルトの名無しさん
07/05/13 01:23:23
メリットは
MFCライクだけどMFCをさらに洗練したような感じになってること
完全クロスプラットフォームだからネットワーククライアント関係を作るなら便利
完全に無料だからライセンスを一切気にする必要がない
多国語サポートとかとにかく機能はすさまじく充実してるけどクラス設計が洗練されてて覚えやすい
350:デフォルトの名無しさん
07/05/13 01:30:20
クラス設計が洗練されているというのは
クラスの命名規約やパラメータのパターンやイベント処理方法がすべて統一されているから
ダイアログの表示の仕方を覚えると、フレーム作ったりMDI作ったりする方法がなんとなく想像できる
ちょっとそれらしい名前のクラスリファレンスを見るだけでダイアログを表示する方法と同じ方法で
いろんなものが表示できる
351:デフォルトの名無しさん
07/05/13 17:04:37
デメリット
英語が出来ないと辛い
352:デフォルトの名無しさん
07/05/13 19:36:07
C++のコード読めないとつらい。
当方、wxPython使い。
353:デフォルトの名無しさん
07/05/13 20:49:24
GUI以外のシステム依存機能が大量に入ってて便利な反面
使わない機能も勝手に付いてきて重い
354:デフォルトの名無しさん
07/05/14 00:01:36
重くは無い
でかいけどw
355:デフォルトの名無しさん
07/05/14 01:55:39
wxJoystickを使ってゲームパッドで操作するアプリを作成中なのですが、
ボタンの押下はポーリングでスキャンする方法しかないのでしょうか??
ボタンを長押ししたりすると、連打してるようになるし、
ボタンをちょっとだけ押しても反応しない時があるので困ってます。。
ボタンが押された時にだけイベントを発生させることはできないのでしょうか?
356:デフォルトの名無しさん
07/05/14 02:41:26
wxJoystick::SetCapture
357:デフォルトの名無しさん
07/05/14 10:06:15
すごく・・・おおきいです
358:デフォルトの名無しさん
07/05/14 13:49:10
大きい・・・のか
359:デフォルトの名無しさん
07/05/14 21:10:12
英語が出来ないので、断念 ⇒ Turbo C++ 使い方が良くわからないので断念 ⇒ WinAPIでガリガリ書く
みんなが辿る道
360:デフォルトの名無しさん
07/05/14 21:22:29
英語つっても文学作品じゃないんだから嵩が知れてるでしょ。
やっぱりデカイのが痛い。
361:デフォルトの名無しさん
07/05/14 21:33:18
>>360
デカイと痛いのか。。。
力を抜けよ。
362:デフォルトの名無しさん
07/05/14 21:43:01
Turbo C++ で十分
363:デフォルトの名無しさん
07/05/14 21:45:43
アッー!
364:デフォルトの名無しさん
07/05/14 21:45:59
>>361
いやまて、チ○コじゃなくて、オパーイかも知れんぞ。
365:デフォルトの名無しさん
07/05/14 22:22:07
>>364
そっちだって、でかいとジャンプするだけで痛いよ?
366:デフォルトの名無しさん
07/05/14 23:01:20
>>359
それはつまり,C++を理解できてない人が打ちのめされたあげく,
Cだけで書こうと思い立つもCすらよく理解できていないからハンドラの扱いが
よくわからなくてWinAPIのサンプルをコピペしてダイアログ作って
テキストボックスに身長を入力したら標準体重を表示するだけの
プログラムの計算ルーチンだけを書いていたら頭の中でガリガリなった
ような気がする状態のことですね。あるある。
367:デフォルトの名無しさん
07/05/15 01:46:53
wxScintillaの内部で利用しているScintillaをさ1.62から
1.71以上にしたいんだけど、どうすればいいの?
368:デフォルトの名無しさん
07/05/15 03:07:02
DLLにすればでかくないw
しかしDLLを作るには英語力が必要w
369:デフォルトの名無しさん
07/05/15 03:35:10
メモリに読み込んだらサイズは一緒
370:デフォルトの名無しさん
07/05/15 04:08:22
メモリ量なら.Netは誰にも負けないw
371:デフォルトの名無しさん
07/05/15 10:30:44
wxPython使ってるんでサイズ的には只のテキストファイルだ
372:デフォルトの名無しさん
07/05/15 20:22:52
py2exe使うとどえりゃーことになるぜ
373:デフォルトの名無しさん
07/05/15 20:42:07
パネル一個のアプリが50MBytes超えるしな。
374:デフォルトの名無しさん
07/05/15 20:46:30
まじめにDLLとReleaseモードを組み合わせたパターンだと
ランタイム含めても2MBいくかいかないかだけどな
本体はよっぽとすさまじいシステムでもない限りせいぜい500kbくらいか
375:デフォルトの名無しさん
07/05/15 21:32:13
>>373
それpy2exeの話?すげーなそれは・・・
376:デフォルトの名無しさん
07/05/15 23:21:42
いわば、pythonとwxpythonの本体もまとめてexeに入れてしまうらしいからね
377:デフォルトの名無しさん
07/05/16 01:35:24
今どき50MBくらいへでもないじゃん。
378:デフォルトの名無しさん
07/05/16 15:39:21
そういう問題じゃないだろ・・
379:デフォルトの名無しさん
07/05/16 16:02:13
わざわざPythonを使う理由がわからん
マゾか?w
C++でもJavaでもいいのにw
380:デフォルトの名無しさん
07/05/16 19:19:46
その3つの中でPythonしか知らないからだよっ!
381:デフォルトの名無しさん
07/05/16 22:34:24
C++ も Java も REPL が無いのが辛い。俺にとってはかなり致命的。
あと C++ は変則的過ぎるから気持ち悪い。
382:デフォルトの名無しさん
07/05/16 22:37:38
統制がとれていないのをマルチパラダイム言語とか言ってごまかしてるからな。
俺はそのカオスさも嫌いじゃないが
383:デフォルトの名無しさん
07/05/16 23:03:59
ちなみにwxJavaScriptってのもあるぞw
384:デフォルトの名無しさん
07/05/17 00:29:48
>>382
あれは、ごまかしてるんじゃない。開き直ってるんだ。
385:デフォルトの名無しさん
07/05/19 08:58:48
開き直ってるというのも、ちょっとニュアンス合わないな。
それだと、途中からそう考え出したみたいだから。
C++のあのスタンスは最初からだよ。
386:デフォルトの名無しさん
07/05/19 22:21:30
サイズ減らしたいと思ってぐぐってたらこんなの見つけた
ケチケチ wxWidgets
URLリンク(bunysmc.exblog.jp)
387:デフォルトの名無しさん
07/05/20 00:19:53
くだらねーw
てか公式でランタイムのバイナリ配布すればいいのにね
388:デフォルトの名無しさん
07/05/23 00:13:34
海外品に頼るな!!
国内産を使え!!
自分に合うのがなければ作れ!!
389:デフォルトの名無しさん
07/05/23 00:31:34
日本の国産品しか使っちゃいけないくらいなら海外に脱出するよ。
390:デフォルトの名無しさん
07/05/23 00:47:17
日本人は馬鹿が多いから無理だな
391:デフォルトの名無しさん
07/05/23 01:05:59
ところで
wxURL<wxHTTPはメインスレッドから呼ぶと非同期通信になってGetInputStreamした段階で必ずreturn NULLしやがりますが
イベント登録も無いし、繋がったタイミングを検出する仕組みが一切ないのですが
これは完全にセカンドスレッドで動かすことを想定してこういう仕様にしたのだろうか?
これだけwxWidgetsじゃないような作りになってて使い物にならん
392:デフォルトの名無しさん
07/05/23 02:17:48
まともにLinuxで日本語表示できるようにしてくれ
393:デフォルトの名無しさん
07/05/23 08:03:41
何年前のLinuxをお使いですか?
394:デフォルトの名無しさん
07/05/25 00:38:13
なんで、はやらないんだろう?
395:デフォルトの名無しさん
07/05/25 00:48:09
>>394
デカイから。
Xcb のラッパーの Xlib のラッパーの Gdk のラッパーの Gtk+ のラッパーな
ライブラリなんて普通は使いたくないでしょ。
396:デフォルトの名無しさん
07/05/25 01:03:12
つか未だにUTFとかでゴミはいるだろLinuxでは使えん。
397:デフォルトの名無しさん
07/05/26 20:51:34
wxSocketBaseのWaitForRead()するとCPU100%になるんだが
Readでブロックしてしまう前に排他制御したいのでデータの有無を事前に確認したいのだが
このCPU使用率はなんとかできんのか?
398:デフォルトの名無しさん
07/05/31 10:59:42
これ、MSのSilverLightに食われるんじゃないの?
Windowsは間違いなくそっちの方向へいくし、Macも使えるし、
LinuxはMoonLightでとりあえず自分的にはGTKよりwxWidgetsのほうが
いいなとおもってた口だが、Silverlightのせいでメリットなくなったな。
399:デフォルトの名無しさん
07/05/31 15:15:37
SilverLight と wxWidgets が競合するようなものだと思ってるところが凄い…
400:デフォルトの名無しさん
07/05/31 17:29:52
「クルマのカタログスペックでやたら語るくせに、免許に1種と2種の区別があることを知らないみたいなもの」だろ。
401:デフォルトの名無しさん
07/05/31 18:01:31
例えばある場所からある場所に移動するのに、どの車でどういう行き方をしてるか話し合ってるときに
新幹線が出来ちゃったんでもうその話は終わりだねって感じじゃん?
402:デフォルトの名無しさん
07/05/31 18:30:27
そいつは多分新幹線にも車にも乗ったことないから、乗り物にさえ乗ればどこにでもいけると思ってるんだろうな、という話。
403:デフォルトの名無しさん
07/05/31 19:50:09
お前らうざいどっかいけ
404:デフォルトの名無しさん
07/05/31 20:25:04
Silverlight=アドビ システムズの「Flash Player」に対抗するウェブブラウザ用プラグイン
405:デフォルトの名無しさん
07/06/06 13:24:51
ずいぶん前に、公式サンプルのバイナリのサイズがあまりに大きかったので、
WxWidgeに興味がなくなったが、先日v.2.8.4をダウンロードしたら、ずいぶん
サイズが小さくなっている。Windous環境静的リンクで簡単なものなら、EXE
圧縮なしでも1Mくらいになっている。
で、興味がわいてきてお試し中だが、ライブラリが、UNICODEか否か、リンクが
静的か動的か、各OSが準備している部品を使うか否か、Debug版か否か・・
の組み合わせで16種類もあるので、ライブラリ構築にすごく時間がかかった。
406:デフォルトの名無しさん
07/06/15 18:01:40
>お願いです。ム板かマ板でやってください。こっちで聞いても泥臭いCocoa使いか
>死亡寸前のPowerPlant使いしか居ません。
>
>日本語での資料の入手のし易さからwxPythonがおすすめかもです。
>本屋でのpython系の本を探ってると結構出てくるし。
>httpはサンプル多いし、GUIもwxPyhtonでそれっぽく造れる。
>
>どっちにしろ、Mac板にはPythonのスキルをもった人間は少ないよ。
>
>ここはMac板です。そうゆう人を隔離するために造られました。
>一掃したら、マカーがPCカテゴリ全体に散らばって収集付かなくなります(>_<)
>
>以下のスレッドでよろしくです。
>
>wxWidgets
>スレリンク(tech板)
>
>Python
>スレリンク(tech板)
てわけで、
新人が来るかもしれないので、みなさん準備をしてください。
407:デフォルトの名無しさん
07/06/15 18:04:25
目立つようにageておきます。
よろしくお願いします。
408:デフォルトの名無しさん
07/06/15 20:12:43
新人マダー?
409:デフォルトの名無しさん
07/06/15 20:37:28
>>406
何で wx を使えもしない人間が wx がお勧めとか書いてるんだよw
適当な誘導だなあ
410:デフォルトの名無しさん
07/06/15 20:46:30
>>409
実際に使ってる人間は勧めたりしないさ…
411:デフォルトの名無しさん
07/06/15 23:23:18
使ってるなら勧めるだろw
412:デフォルトの名無しさん
07/06/16 00:49:19
流れをぶった切って伺いたい
今MSW版の2.8.4ビルドして、samplesのいくつかをDLL Unicode Releaseの設定でこさえて実行したら
ウイルスバスター2007が警告出しやがったんだが同じ経験した椰子いる?
まぁ、バスタの警告はなんかもう、「俺が知らないプロセスは全部マルウェアだ!!」ってノリに見えるので
それ自体は気にならんけど。
413:デフォルトの名無しさん
07/06/17 15:35:16
マニフェスト。
414:デフォルトの名無しさん
07/06/19 23:28:28
サンプルの問題では?
415:デフォルトの名無しさん
07/06/25 00:16:24
翻訳プロジェクト手伝おうと思うんだけど
管理者の人はまだここを見てるのかな
416:デフォルトの名無しさん
07/06/25 12:38:50
みてますが、プロジェクトは死んでます。死なせちゃってごめんなさい。まだこのプロジェクトに割く余力が生まれないので、当分死んだままだと思います。
一人でもいいからやってみる!っていう気概があるなら、メンバーに追加するので、sourceforge.jpのログイン名教えて下さいね。
417:415
07/06/26 23:02:44
>>416
「ho-ayn」でお願いします
418:デフォルトの名無しさん
07/06/27 06:14:44
追加したよ。
419:415
07/06/27 22:44:28
>>418
どうも
とりあえず細々とやっていきます
420:くれくれくん
07/07/18 00:18:40
すみません、なんでもくれくれ君ですが
WindowsXPノートのHDが暑さでダウン~。HD交換しましたがシステムが...
間に合わせに日経Linux7月号のDVDからUbuntu7.04日本語版をいれましたが
なかなかいいじゃないですか。
とりあえずLINUXに乗り換えて
前環境を再構築中です(xp+cygwin -> linux)
とりあえずecos cofiguretion tool を動作させたいのですが。
URLリンク(www.ecoscentric.com)
wxWidgetsの実行環境が必要みたいで
ここにたどりつきましたが
簡単インストールはどうすればいいのでしょうか?♪~
以上くれくれくんでした
421:デフォルトの名無しさん
07/07/18 00:44:37
UbuntuだったらSynapticが最初から入ってるじゃないか
422:デフォルトの名無しさん
07/07/20 01:34:02
他のスレ見に行ったわけじゃないが明らかにマルチ
423:デフォルトの名無しさん
07/07/20 03:19:22
421だけど、ああいうのは無視した方がいいのかな。
あの手のタイプがLinuxに関わっても本人のためにならないとは思うけど。
424:デフォルトの名無しさん
07/07/21 01:36:26
>423
本人のためにならない、だけなら自業自得だからいいんジャマイカ。
と、2.8.4 mswでどうにも最小サイズの指定が効かずに四苦八苦しているど素人が言ってみるテスト。
425:デフォルトの名無しさん
07/08/10 20:34:20
>>412
DEP
426:デフォルトの名無しさん
07/08/17 01:53:05
あああ
427:デフォルトの名無しさん
07/08/21 14:46:54
release buildの途中でコンパイラが落ちちゃうんですが、ご助言を
デバッグビルドはうまくできました。
---
Win2ksp4
MinGW 5.1.3 (GCC 3.4.2)
MSYS 1.0.10
wxMSW 2.8.4
---
configure --with-msw --disable-debug --disable-shared --enable-unicode
---
/c/dev/wxWidgets/build-release/bk-deps g++ -c -o baselib_datetime.o -D__WXMSW__
-I../src/tiff -I../src/jpeg -I../src/png -I../src/zlib -I../src/regex -I../src/expat/lib
-DwxUSE_GUI=0 -DwxUSE_BASE=1 -I/c/dev/wxWidgets/build-release/lib/wx/include/msw-unicode-release-static-2.8
-I../include -mthreads -Wall -Wundef -Wno-ctor-dtor-privacy -ggdb -O2 -fno-strict-aliasing ../src/common/datetime.cpp
../src/common/datetime.cpp: In function `wxString CallStrftime(const wxChar*, const tm*)':
../src/common/datetime.cpp:265: internal compiler error: in dwarf2out_frame_debug_expr, at dwarf2out.c:1602
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:URLリンク(www.mingw.org) for instructions.
make: *** [baselib_datetime.o] Error 1
---
以上です
428:デフォルトの名無しさん
07/08/21 16:04:33
あ、427ですが、GCCのバージョンが最新じゃないですね。
バージョンを上げたらエラーが出なくなりました。
MinGWインストールで最新バージョンが入るんじゃなかったのか(´・ω・`)
すんませんでした
429:デフォルトの名無しさん
07/08/25 02:27:23
wxWidgetsのGUIデザイナで、MSVC8用のアドインみたいなものってあるんでしょうか?
あれば、金払ってでも欲しいんですが。
430:デフォルトの名無しさん
07/08/25 02:54:43
あ、俺もそれ欲しい
できれば無料がいいけど
431:デフォルトの名無しさん
07/08/26 23:19:38
過去ログ斜め読みで流れぶったぎりながら聞くんだけどさ、
Windows(MinGW) で wxGraphicsContext のあたりのクラス使えた香具師いない?
コンパイルしようとしたら GDI+ のライブラリがないらしくて、
./configure で --enable-graphics-ctx を指定してもエラーだらけだよう。
ちょろちょろぐぐってんだけど、MinGW で GDI+ となると情報見つからないし……助けてー。
432:デフォルトの名無しさん
07/08/28 21:56:13
URLリンク(up.nm78.com)
433:デフォルトの名無しさん
07/08/29 13:51:53
>>432
グロ注意
434:デフォルトの名無しさん
07/09/01 12:55:46
Code::Blocks使ってる方いますか?
結構よさげだと思い、wxGladeから移転したいのですが、
xrcのインポートの仕方が分かりません。
知っている方いましたら教えて下さい。お願いします。
435:デフォルトの名無しさん
07/09/10 22:48:13
wxPerlのwxHTMLwindowに関して、非常に初歩的ですが質問させてください
(環境:win xp sp2, active perl 5.8.8, wxPerl)
html形式で文書を表示させるウィンドウを表示させようと思い、wxHtmlWindowを利用しようとしました。
まず、一番シンプルな形でテストしようと思い、wxperlのチュートリアルのただのウィンドウを表示させるスクリプト
use Wx;
package MyApp;
use base 'Wx::App';
sub OnInit {
my $frame = Wx::Frame->new( undef, -1, 'wxPerl rules', [-1, -1], [250, 150], );
$frame->Show( 1 );}
package main;
my $app = MyApp->new;
$app->MainLoop;
これをwxHtmlWindowに置き換えてみました。(続きます)
436:435
07/09/10 22:49:35
use Wx;
package MyApp;
use base 'Wx::App';
sub OnInit {
my $frame = Wx::wxHtmlWindow -> new( undef, -1, [-1, -1], [250, 150], wxHW_SCROLLBAR_AUTO , "htmlWindow", );
$frame->Show( 1 );}
package main;
my $app = MyApp->new;
$app->MainLoop;
このスクリプトを実行しようとするとエラーメッセージで
Can't locate object method "new" via package "Wx::wxHtmlWindow"(perhaps you
forgot to load"Wx::wxHtmlWindow"?) at (スクリプトのファイル).pl
と表示されます。
ファイルのはじめにwxHtmlWindowを呼び出す必要があるのかと思い、
" use Wx::wxHtmlWindow ; " を足すと
Can't locate Wx/wxHtmlWindow.pm in @INC (@INC (モジュールの置き場所のパスwx))..
... BEGIN failed--compilation aborted at (スクリプトのファイル).pl
と表示されます。ex自体は正常にインストールされ、これまで問題なく使えていました。wxHtmlWindow特有の
設定などがあるのでしょうか?原因のわかる方がいらしたらアドバイスお願いします。
437:デフォルトの名無しさん
07/09/11 05:05:49
>>435
あなたの疑問点とは違うが
> これをwxHtmlWindowに置き換えてみました。(続きます)
ここが既に間違い。wxHtmlWindowはフレームじゃないんで。
他のWindowの中に貼り込むもの。
いきなり見様見真似で突っ込む前にもう少しwxの概念とかを
飲み込んだ方がいいと思う。
438:435
07/09/12 02:54:10
>>437
ご指摘のとおり、wxの基本的な部分で勘違いをしていました。親ウィンドウを作って
そのなかにpanelのようにwxHTMLwindowを設定してはりこむのですね。
エラーですがuseの使い方が悪かったようで
URLリンク(www.opensubscriber.com)
とwxPerlのチュートリアルのスクリプトを組み合わせて色々いじってみたら簡単なhtml表示
ウィンドウが出せるようになりました。
wxどころかperlの使い方の基本すらなっていなかったようで、もっと勉強してから書き込むべきでした。
439:デフォルトの名無しさん
07/09/12 13:31:59
特に話題もないので初歩的な話もありでは
440:デフォルトの名無しさん
07/09/12 18:02:43
話題の枝刈りにこだわるには、ちょいと閑散とし過ぎているからね。
441:デフォルトの名無しさん
07/09/14 21:48:42
Open Tech Press | Windows向けFTPの秀作FileZillaがLinuxにも対応
URLリンク(opentechpress.jp)
442:デフォルトの名無しさん
07/09/15 00:30:18
FTP なんてコマンドラインやスクリプトでやるもんだと思ってたけど…
443:デフォルトの名無しさん
07/09/16 13:54:10
秀丸がlinuxにも対応
と聞いて飛んできますた
が見間違えだった
444:デフォルトの名無しさん
07/09/20 23:58:51
wxWidgetsとMySQL一緒に使ってる人いる?
URLリンク(www.wxwidgets.org)
によるとMySQLのODBCドライバにバグがあるらしいんだけど
ここに書いてあるとおりにしてもサンプルがちゃんと動かないし
直接API使うしかないのかな
445:デフォルトの名無しさん
07/09/30 13:44:51
ちょっとしつもん。
wxWidges と OpenGL を組み合わせた無償または有償アプリ
(少なくとも自作部分に関してはソース非公開が前提)
を作るとして、本当だったら、エンドユーザーには
wxWidgets と OpenGL を事前にインストールしてもらわないといけない。
それは面倒なので、インストールしていない環境でもそのまま実行でいるように wxWidgets と OpenGL を組み込んだ状態で
アプリケーションを作成・配布したい(つまり、wxWidgets と OpenGL のDLLを EXEと一緒に配布または販売)んだけど、これってライセンス的に問題ある?
446:デフォルトの名無しさん
07/09/30 14:05:59
それぞれのライセンス読もうな。
447:デフォルトの名無しさん
07/09/30 15:44:40
FAQ も読めない奴は(・∀・)カエレ!!
Can I use wxWidgets for both proprietary (commercial) projects, and GPL'ed projects?
Yes. Please see the licence for details, but basically you can distribute proprietary binaries without distributing any source code, and neither will wxWidgets conflict with GPL code you may be using or developing with it.
The conditions for using wxWidgets are the same whether you are a personal, academic or commercial developer.
448:デフォルトの名無しさん
07/10/01 00:26:11
英語が読めないスーパーハカー
449:デフォルトの名無しさん
07/10/01 01:34:39
スーパーハカーと呼ばない
450:デフォルトの名無しさん
07/10/01 05:14:10
スーパーバカー
451:デフォルトの名無しさん
07/10/02 02:06:20
>450
昨日半徹だたのでちょとフイタw
……いい加減寝よorz
452:デフォルトの名無しさん
07/10/05 04:59:01
Can I use wxWidgets for both proprietary (commercial) projects, and GPL'ed projects?
wxWidgetsは商用プロジェクトとGPLプロジェクトの両方で使う事ができますか?
Yes. Please see the licence for details, but basically you can distribute proprietary binaries without distributing any source code, and neither will wxWidgets conflict with GPL code you may be using or developing with it.
はい。詳しくはライセンスを読んでください。
ただ、原則としてあなたの配布物がバイナリ形式(いかなるソースコードも含まない)であり、
なおかつGPLコードが含まれない場合に限ります。
The conditions for using wxWidgets are the same whether you are a personal, academic or commercial developer.
この条件は wxWidget の個人利用、教育利用、商用利用にかかわらず適用されます
。。。みたいなことが書いてあるってことであってる?
453:デフォルトの名無しさん
07/10/05 08:27:22
>>452
>but basically you can distribute proprietary binaries without distributing any source code, and neither will wxWidgets conflict with GPL code you may be using or developing with it.
基本的にあなたはいかなるソースコードも配布せずにプロプライエタリなバイナリを配布する事が出来ますし、
wxWidgets はあなたがプログラムの実行や開発に利用するGPL のコードとライセンスの矛盾を起こす事はありません。
454:デフォルトの名無しさん
07/10/05 08:36:04
>>452
neither will wxWidgets conflict with ~ は
wxWidgets will not conflict with ~ と読み替えると宜し。
455:デフォルトの名無しさん
07/10/05 10:25:13
thx. なるほど、neither ~ の部分はそう訳せば良かったのか。。。
つくづく、学校でちゃんと英語をやっておけば良かったと思うよ。
456:デフォルトの名無しさん
07/10/13 08:26:26
GLCanvasつかってるひといる?
これって、一つの frame には GLCanvas しか
配置できないのかな?
frame -> panel -> glcanvas とか、
frame -> gridsizer -> glcanvas + textctrl とか
やろうとすると、フレーム全体が全く描画されなくなってしまう
OpenGLって、コントロール単位ではなく
ウィンドウ単位でしか描画してるのかな?
457:デフォルトの名無しさん
07/10/13 11:05:25
2.6時代だけど、普通にsizerに色んな物と一緒に置いても問題なかった
458:デフォルトの名無しさん
07/10/16 03:27:37
wxWidgetsは所詮Wrapperだから
普通にOpenGLで多画面出来るかどうかの問題だ
出来るのならプログラムか環境に問題がある
459:デフォルトの名無しさん
07/10/16 15:06:43
URLリンク(cc.codegear.com)
wxForms - wxWidgets Form Designer for C++ Builder
これってどうよ?
460:デフォルトの名無しさん
07/10/16 15:54:23
wxDialog based と wxFrame based について教えて下さい。
・1つのプロジェクト(というかmakefile?)ではどちらにするか決定するものでしょうか?
・どう違うのでしょうか?(どちらが良いのでしょうか?)
解説サイトでも何でも良いので教えて下さいorz
461:デフォルトの名無しさん
07/10/16 18:29:28
メインがダイアログかフレームかってこと?
462:460
07/10/16 18:33:54
そうです。
メイン以外もどうすべきか教えて下さい。
463:デフォルトの名無しさん
07/10/17 01:33:37
おれの理解ではメニューバーやステータスバーが欲しければFrame、欲しくなければDialogだ。
どちらがいいとか悪いとかいう問題じゃない。好きなほうにしたらいい。決められないなら鉛筆ころがせ。
464:デフォルトの名無しさん
07/10/17 01:59:55
>>460
URLリンク(python.matrix.jp)
465:460
07/10/17 08:39:03
>>463
>>464
そういう内容を知りたかったんです。
この問題は解決しましたが、
1つ1つ問題を解決するの大変orz
Delphiなんかだと、
TFormがウィンドウで、その中に貼り付けるのがTFrameだったりするので、
危うく間違えるところですた。
466:デフォルトの名無しさん
07/10/17 09:11:38
>>465
知らないものを触る時はまず付属のサンプルを見た方が良いのでは?
余計なお世話かも知れませんが。
467:デフォルトの名無しさん
07/10/17 10:47:19
MacでwxWidgetsする場合は、
コンパイラはgccですか?Xcodeですか?
468:デフォルトの名無しさん
07/10/17 12:22:55
>>467
Xcodeでgccですよ
469:467
07/10/17 18:25:11
あ、XcodeってIDEであってコンパイラは別なんですか。
Eclipseみたいなもんかぁ。
サンクス
470:デフォルトの名無しさん
07/10/18 01:29:59
皆さんが、画面を作成するときは、どんなツールを使用していますか?
471:デフォルトの名無しさん
07/10/18 07:15:42
テキストエディタ
472:デフォルトの名無しさん
07/10/18 10:10:48
紙とペン、鉛筆
473:デフォルトの名無しさん
07/10/18 10:11:31
>【A3】C++Builderテクニカルセッション
>「wxFormsで始めるwxWidgetsプログラミング」
こういう答えを希望してるわけ?
474:デフォルトの名無しさん
07/10/18 21:07:42
自動生成だといらない物がごちゃごちゃ入り込んで気持ち悪い
475:デフォルトの名無しさん
07/10/19 09:08:22
自動生成の要らないものごちゃごちゃに対するアンチテーゼというかアウフヘーベンが、
”クラスライブラリ+IDE”だお。
これだと差分コードしか表れない。
但し、VC++/MFCは除く。
476:デフォルトの名無しさん
07/10/20 00:09:58
MFCはAppWizardなしでも使えるよ
477:デフォルトの名無しさん
07/10/22 08:52:03
>>476
それって何て手書き?
478:デフォルトの名無しさん
07/10/22 18:37:55
>>477
いや、MFCは手書き不可みたいに書いてたから。
手書きMFCなんてやる理由はないとは思うけど。
479:デフォルトの名無しさん
07/10/27 22:42:12
クロスプラットフォームで独自形式のrich text editorを作りたいと思ってwxWidgetsを使ってみました。
ちょうどrich textのサンプルあったので動かしてみましたが、これって日本語入力できないですね。
どうやらeditor boxみたいなおネイティブのコントロール使ってる場合はOKなんですが
自力で作るコントロールの場合はそのままでは無理っぽいです。
そのあたりハンドルできる方法ってないですか?
今はWinowsでVC使って動かしています。
このあたりクロスプラットフォームで日本語入力も完璧なのって結局Javaなんですかね・・・
なるべくならC/C++でやりたいと思ってます。
wxWidgets以外にもいい候補あったら教えてください。
480:デフォルトの名無しさん
07/10/28 00:27:43
>>479
自分で実装するか、IIIMF とか Anthy とか使ってみるかじゃないかな。
481:デフォルトの名無しさん
07/10/28 01:29:40
Windowsって書いてるけど
482:デフォルトの名無しさん
07/10/28 01:35:22
クロスプラットフォームって書いてるけど
483:479
07/10/29 00:04:53
ありがとうございます。
wxWidgetsだけではやっぱり無理っぽいですね。
インライン入力の制御は面倒なのでできればありもので済ましたいです。
で思いあたったことにマルチプラットフォームといえばOpenOfficeがありました。
あれのtoolkitってどうなってるんですかね。
SDKあるみたいなのでちょっと調べてみます。