
No.3ベストアンサー
- 回答日時:
もう一つ、「アイコンを自動整列」の方は、hwndSysListView を取得するところまでは ANo2 と同じで、hwndSysListView を使用して
LONG lngStyle = GetWindowLong( hwndSysListView, GWL_STYLE );
if( lngStyle & LVS_AUTOARRANGE ) {
MessageBox( NULL, _T("自動整列です。"), _T("GetAutoArrange" ), MB_ICONINFORMATION );
} else {
MessageBox( NULL, _T("自動整列ではありません。"), _T("GetAutoArrange" ), MB_ICONINFORMATION );
}
のような感じで判定可能です。
No.2
- 回答日時:
「アイコンを等間隔に整列」かどうかは、他にも方法があるのかもしれませんが、次のようなコードで取得可能です。
=======================================================
#include <windows.h>
#include <commctrl.h>
int _tmain(int argc, _TCHAR* argv[])
{
HWND hwndTop = FindWindow( _T("Progman"), _T("Program Manager") );
if( hwndTop ) {
HWND hwndChild = GetWindow( hwndTop, GW_CHILD );
if( hwndChild ) {
HWND hwndSysListView = GetWindow( hwndChild, GW_CHILD );
if( hwndSysListView ) {
DWORD dwExStyle = ( DWORD )SendMessage( hwndSysListView, LVM_GETEXTENDEDLISTVIEWSTYLE, 0, 0 );
if( dwExStyle & LVS_EX_SNAPTOGRID ) {
MessageBox( NULL, _T("等間隔整列です。"), _T("GetSnapToGrid" ), MB_ICONINFORMATION );
} else {
MessageBox( NULL, _T("等間隔整列ではありません。"), _T("GetSnapToGrid" ), MB_ICONINFORMATION );
}
}
}
}
return 0;
}
=======================================================
( インデントのため、全角空白を使用しています。)
設定するには、LVM_SETEXTENDEDLISTVIEWSTYLE を使用します。
No.1
- 回答日時:
# 回答ではありません。
>アイコンの自動整列-等間隔に整列の属性を変更したい
それは特定のアプリケーションからでしょうか?
そこらへんの設定はユーザ個々で行うので、
勝手に変わるようなのはあまり良くないと思うのですが。
(たとえば、自動整列でない場合、そのユーザとしては最適なところに
アイコンを配置したにも関わらず、そのアプリを起動したとたんに自動整列になってしまった。
せっかく使いやすい位置に置いてあったのになんだよ(怒)!となる)
この回答へのお礼
お礼日時:2010/02/10 10:31
bluecampus様
ご回答ありがとうございます。
当然の事だと思います。
私もアプリから個人設定を切り替えるソフトウェアは使用しません。
当然、動作後に戻します。
申し訳ないですが、ご指摘の内容は必要ありません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VB.NETで DataRow()を利用して...
-
ListView 項目の選択/選択解除...
-
count(*)で取得した値をJAVAの...
-
データ数をカウントしたいのですが
-
利用者側のMACアドレスを取得し...
-
PHP8でWarning:Undefined varia...
-
Spreadの選択行の取得について
-
JSP+Servletでのページングの常識
-
VBA:小数点以下の数字を取得で...
-
VBA Shapesの座標からセル位置...
-
動的SQLのCOUNTのとり方
-
PCインストール済みのアプリケ...
-
asp.netでtextboxの値を取得
-
別フォームのスプレッドの内容...
-
getParameter と getAttribut...
-
「Excel VBA」 Webクエリ マク...
-
エクセルVBAで複数選択できるよ...
-
C#でネットワーク(LAN)上のPC...
-
VBAでActiveDirectoryのユーザ...
-
VB .netにて現在時刻+1時間後...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB.NETで DataRow()を利用して...
-
PHP8でWarning:Undefined varia...
-
count(*)で取得した値をJAVAの...
-
ListView 項目の選択/選択解除...
-
VBAでActiveDirectoryのユーザ...
-
VBA:小数点以下の数字を取得で...
-
JSP+Servletでのページングの常識
-
データ数をカウントしたいのですが
-
Flexgridで選択行の列の値を取...
-
利用者側のMACアドレスを取得し...
-
getParameter と getAttribut...
-
like演算子内に変数って使えな...
-
JavaScriptにおいてコンピュー...
-
郵便番号検索APIにてget Elemen...
-
DataGridView 複数選択で行番...
-
URIでのページの移動について
-
Spreadの選択行の取得について
-
指定のURLのタイトルを取得...
-
EXCELのリストボックスを選択し...
-
ListViewで複数選択された項目...
おすすめ情報