喫茶XRAYトップページ

[スレッド全体
]

[10214] ふる〜い Delphiの方への参考返信 削除
2016/7/22 (金) 17:09:34 Mr.XRAY
> [01_Vista 以降の拡張フレームのウィンドウ ]
> http://mrxray.on.coocan.jp/Delphi/plSamples/368_ScreenCaptureTest.htm#01


DwmGetWindowAttribute が実装されていないふる〜い Delphi の方への参考

function DwmGetWindowAttribute(hwnd: HWND; dwAttribute: DWORD;
  pvAttribute: Pointer; cbAttribute: DWORD): HResult; stdcall;

  DWMWA_EXTENDED_FRAME_BOUNDS = 9;


TForm の Width, Height が,相当する値を返してくれればいいと思った方,
それでは個人的に困るんです.
TForm.Width, TForm.Height の値を使用して,フォーム内のコントロールの配置
をしているのがあるんです !!
そういうこをしてもらうと Windows のバージョンで配置が変わってしまって,
困るんです !!


[10216] Re:ふる〜い Delphiの方への参考返信 削除
2016/7/22 (金) 17:27:18 Mr.XRAY
> TForm.Width, TForm.Height の値を使用して,フォーム内のコントロールの配置

Clientxxx かを使うべきだとおっしゃる方がいるかも知れません.
でも,いままでのは,誰が修正してくれるんですか ?


[10221] Re:ふる〜い Delphiの方への参考返信 削除
2016/7/23 (土) 18:57:12 Mr.XRAY
> function DwmGetWindowAttribute(hwnd: HWND; dwAttribute: DWORD;
>   pvAttribute: Pointer; cbAttribute: DWORD): HResult; stdcall;
>
>   DWMWA_EXTENDED_FRAME_BOUNDS = 9;


「delphi DwmGetWindowAttribute」でググったら 3 番目にありました.

http://www.delphipraxis.net/159936-form-mit-bssingle-unter-aero-zu-gross.html

関数のところだけコピペして動作確認してみました.
後は前のテストコードと同じです.
動作確認は Windows 10(1511 ビルド 10586) 64 bit + Delphi 7 Pro
Form1 と Form2 の間に隙間があるように見えますが,隙間ではありません.
Windows 10 ではウィンドウのフレームが青いのです.それです.

追加したコードです.

const
  DWMWA_EXTENDED_FRAME_BOUNDS = 9;

function DwmGetWindowAttribute(hwnd: HWND; dwAttribute: DWORD; pvAttribute: Pointer; cbAttribute: DWORD): HResult; stdcall;
  external 'dwmapi.dll';



[10222] Re2:ふる〜い Delphiの方への参考返信 削除
2016/7/23 (土) 19:04:48 Mr.XRAY
>[ShellExecute等]
>http://www.freeml.com/delphi-users/4477/latest


http://www.freeml.com/delphi-users/4488
>私には敷居の高いことではありますが、少しずつやってみようと思います。

そうですかぁ ?
すぐできると思うんですが...
あまり緊急ではなかったのね.


[10227] 仕事の作法?返信 削除
2016/7/24 (日) 14:20:15 Mr.XRAY
> >私には敷居の高いことではありますが、少しずつやってみようと思います。
>
> そうですかぁ ?
> すぐできると思うんですが...


敷居が高かろうと,低かろうと,
やらなければならない時はやらなければならないんです.
ゴチャゴチャと言っている場合じゃないんです.
アプリを使用するユーザが待っているんです.

今回の例は,DwmGetWindowAttribute という関数です.
ネットでこの関数を使用した例を探します.
使ったことがなければ,ほとんどこれしか手はありません.

そのコードをコピペして実行します.
当然未定義のエラーが出ます.
また,ネットで,その関数の定義文が書いてあるページがあるか探します.
運がよければ,今回のように,使用例と関数の定義文のコードが見つかります.
なければ,MSDN の記事を元に作成します.

その関数の定義文を,使用するソースコードに貼り付けます.
コンパイルして実行します.
どこに貼り付けたらいいか分からなければ,
それこそ,コミュニティの存在価値があるというものです.

以上です.
で,「敷居の高い」のはどの部分 ?
と,こういうこと言ってもヤル気のない人には無理か...


[10228] リホームのすすめ返信 削除
2016/7/24 (日) 16:12:47 Mr.XRAY
> > >私には敷居の高いことではありますが、少しずつやってみようと思います。

サラリーマン男二人の会話

男 A
「敷居が高くてプログラムが中々進まない人がいるらしいよ」

男 B
「その人は高齢者か障害のある人かも知れないね.
最近は,敷居の高さをなくした,障碍者や高齢者にやさしい住居があるらしいよ.
リホームするといいかもね」

-----------  半可通 -------------------------------------------


[10230] Re:リホームのすすめ返信 削除
2016/7/25 (月) 00:41:27 Nov
▼ Mr.XRAYさん
> > > >私には敷居の高いことではありますが、少しずつやってみようと思います。
>
> サラリーマン男二人の会話
>
> 男 A
> 「敷居が高くてプログラムが中々進まない人がいるらしいよ」
>
> 男 B
> 「その人は高齢者か障害のある人かも知れないね.
> 最近は,敷居の高さをなくした,障碍者や高齢者にやさしい住居があるらしいよ.
> リホームするといいかもね」
>
> -----------  半可通 -------------------------------------------


敷居が高い≠ハードルが高い
というのを知ったのは、意外と最近ですが...

http://kotowaza-allguide.com/si/shikiigatakai.html

ハードルは低くても苦手です。

---- 1/4可通 ----

[10231] Re2:リホームのすすめ返信 削除
2016/7/25 (月) 08:35:12 Mr.XRAY
▼ Novさん

> ハードルは低くても苦手です。

メタボ ?
 
> ---- 1/4可通 ----

ハハハッ.更に半分ですか.


[10223] Re2:ふる〜い Delphiの方への参考返信 削除
2016/7/23 (土) 21:41:08 Mr.XRAY
> 後は前のテストコードと同じです.

ウソです.
uses 部から DWMAPI を削除しています.


[10224] Re2:ふる〜い Delphiの方への参考返信 削除
2016/7/23 (土) 22:23:16 Mr.XRAY
> 動作確認は Windows 10(1511 ビルド 10586) 64 bit + Delphi 7 Pro

というわけで,Delphi 3 でも EXE を作成して確認してみました.



[▼次のスレッド]
INCM/CMT
Cyclamen v3.82