◆こんなソフトウェアつくってください!〜Part2〜◆

537 名前:名無しさん@お腹いっぱい。 :03/12/26 23:54 ID:0BHKqTXQ
すみません、いろいろ探してみたり、
こんなソフトウェアありますかスレでも聞いてみたんですけど、
やっぱりみつからなかったので、ここで依頼してみます。

ポインタの操作をX軸とY軸を入れ替えて、
90度(270度)回転させるようなソフトって作れますか?
要はノートパソコンの画面を90度回転させたときに、
パッドの操作も90度回転させたいってことなんですけど。

こんなソフトウェアありますかスレのレス↓

http://pc2.2ch.net/test/read.cgi/software/1071895662/250



538 名前:名無しさん@お腹いっぱい。 :03/12/27 01:42 ID:XQMQregF
>>537
ずっと質問の意図がわからなかったんだが、
パッドってゲームパッドではなくて、タッチパッドのこと?

539 名前:名無しさん@お腹いっぱい。 :03/12/27 08:39 ID:RJYL9yHM
>538

ごめんなさい、説明不足でした。
パッドって、ノートパソコンについてる
フラットパッド(=タッチパッド?)のことです。
指でなぞったりして操作するやつ。

パッドって固定されてるから、
ノートパソコン縦にして、画面回転させると
上に動かそうとしたら、左いっちゃったりして
非常に操作しづらいんですよ。

実際にノートパソコンでやってみないと
わかりづらいですね・・・。

540 名前:名無しさん@お腹いっぱい。 :03/12/27 23:29 ID:CVWLPpNu
画面とタッチパッドはいっしょに回転するんだろうから、
そのままのほうが操作しやすくないか?

そもそも、ノートパソコンを縦にする用途ってなんだ(汗

541 名前:名無しさん@お腹いっぱい。 :03/12/28 01:18 ID:RnHP0M8I
>>539
ttp://www.sotec.co.jp/direct/afina_tablet/index.html
↑こう言うタイプのノートパソコンを使ってる訳だな?

542 名前:名無しさん@お腹いっぱい。 :03/12/28 09:48 ID:ngbscVbh
用途は、プレゼンするときに便利かもなぁ、とか、
縦長の画像閲覧するときに嬉しかったりとか、
ただ単純にものめずらしいのが好きだったりとか。
縦長の画面でWeb閲覧してみたいとか。

使ってるのは、ごく普通のノートパソコンです。
だから、画面とパッドは(論理的には)一緒に回転しません。

180度回転で考えるとわかりやすいかも。
画面が180度回転すると、パッドで上方向になぞると
ポインタは下方向に移動しちゃったりして。
左右も逆になるから、非常に操作しづらい。
>541のみたいに、タッチパネルだったらよかったかも。

ていうか、普通のノートパソコン縦にして
使ったりする人って他にいないのかなぁ?

543 名前:名無しさん@お腹いっぱい。 :03/12/28 15:04 ID:ZZuPvBAU
マウス買って来て線を入れ替えれば終わりなのに。

544 名前:名無しさん@お腹いっぱい、 :03/12/28 17:53 ID:G0VqbqWm
理工学系キタ━━━━(゚∀゚)━━━━!!!

545 名前:名無しさん@お腹いっぱい。 :03/12/29 23:05 ID:6nKX/+dI
>>542
180度じゃなくて90度じゃないの?
つーか、>>543の言うようにマウス付けたほうが早いと思った。

546 名前:名無しさん@お腹いっぱい。 :03/12/30 02:34 ID:XxwexccH
>>542
作ってみた…
要 Borland C++ Builder 6 のランタイムライブラリ
http://earth.prohosting.com/soft186/cgi-bin/updir/CursorTurn.zip

547 名前:537=539=542@規制中で書き込めず :03/12/30 16:31 ID:Kw5mLTWy
>546

ありがとう!
この感謝の気持ちをどうやって表せばいいんだろう?
とりあえず、実世界でこのツール使ってる人見かけたら、
「俺が作者だ!」などと名乗り出てください。
コーヒーおごります。
でも、俺以外の人の可能性もあるかも。
ないか。

ちなみに、これ作るのにどれくらいかかりました?
挫折しそうな予感はしつつ、ちょっと自分で
作ってみようかなぁ、なんて思い始めてたもので。
mouse_eventとか使うの?

>543、545

確かに、マウス使えば解決なんだけど・・・。
なんか、ノートパソコンって周辺機器つけたくなくない?
それ自体で完結させたいみたいな。
持ち歩き用は特に。


なにはともあれ、ありがとうございました。

こんな感じになってます。
ttp://naha.cool.ne.jp/yutz/sora/power/desk.JPG

548 名前:546 :03/12/30 16:47 ID:XxwexccH
>>547
やってること自体はすごく簡単なことなので、そんなに時間はかかってないです
API探すのと、途中で勘違いに気付くまでの時間と制作にかかった時間くらいで。

APIはGetCursorPosとSetCursorPos使ってます。mouse_eventはややこしそうなのでパス…
GUIまわりとか不満あると思うんで、自作したほうがいいかも。

549 名前:546 :03/12/30 16:57 ID:XxwexccH
int x,y,x2,y2; TPoint p;
GetCursorPos((LPPOINT)&p);
x = p.x; y = p.y;
while( 1 ){ //適当な条件式に変えないと終了しません
 GetCursorPos((LPPOINT)&p);
 if( x != p.x || y != p.y ){
  x2 = x + (p.y - y); //右回転の場合は + を - に。
  y2 = y - (p.x - x); //上に同じ。
  SetCursorPos(x2,y2);
  GetCursorPos((LPPOINT)&p);
  x = p.x; y = p.y;
 }
 //ウェイト BCB用なのでVCだとどう書くか不明
 Application->ProcessMessages();
 Sleep(1); //1ミリ秒のウェイト
}
一応メイン部分のソース インデントに全角空白使ってます
まぁ、すごく単純…

550 名前:547 :03/12/30 17:23 ID:BRaQTGNA
>546

ありがとう。

GUIのあたりはあまり詳しくないんで、
俺には、これ以上いじる余地はないです・・・。
というより、プログラム自体詳しくないし。

なにげにアイコンが素敵だと思いました。

欲を言えば、もうちょっと精度が高いといいかな
なんて思うんだけど、どこいじればいいんだろう・・・?

ソース参考にいろいろやってみようかなぁ。
激しく挫折しそうだけど。
っていうか、何も思いつかん。


551 名前:名無しさん@お腹いっぱい。 :03/12/30 17:43 ID:uRwbmJKZ
ポーリングではなくイベントフックで置き換えするようにしたら?

552 名前:546 :03/12/30 18:32 ID:XxwexccH
>>551
WH_MOUSE
これ使うのかな… さっぱりわからんかったりするが…

553 名前:名無しさん@お腹いっぱい。 :03/12/30 19:09 ID:uRwbmJKZ
>>552
いや、タイミングだけね。
WH_MOUSEかWH_MOUSE_LLでWM_MOUSEMOVEが
来たときだけ位置の置き換え処理するようにすればいいじゃん。
面倒でなければ元のWM_MOUSEMOVEを削除してもいいし。

俺が作るわけじゃないから偉そうなことは言えんけど


554 名前:546 :03/12/30 20:05 ID:XxwexccH
>>553
APIダメポ…
なんとなくわかるけど、具体的にどんなコード書くかまではわからん。
修行してきまつ。

教えてくれてありがとう

555 名前:名無しさん@お腹いっぱい。 :03/12/30 22:51 ID:VSLC6GJZ
勉強するつもりならム板行くと良い。素人お断りな感は否めないが。


DAT2HTML 0.26 Converted.