※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

MixiCheck.ahk


/*
MixiChek.ahk  2007-06-13 版
開きたいユーザ or コミュニティとページを指定してブラウザを起動

・メンバー、コミュニティのリストをテキストファイルで作成しておく。
 リストの書式:
  識別用名前 | ID
  あの子 | 123456789
  *この仲間 | 9876
  その美 | 4567890
 一行に一ID
 コミュニティの場合は、識別名の先頭に * を付ける。
 メンバー、コミュニティの順序は不問。

・リスト選択は、マウスまたは↑↓カーソルキーで。
・リスト上でダブルクリック、またはカーソルキーで選択後 ENTERキーで
 指定のページを開く。
・ESCキーでキャンセル
*/

#NoTrayIcon

; ブラウザのパスを指定
browser = D:\Application\Internet\mxcat\mixiCat.exe
; メンバー(マイミク等)・コミュニティのリストファイルのパスを指定
mixiList = D:\Application\tools\AutoHotkey\myMixiList.txt
; 自分の mixi ID
myID = xxxxxxxx

  Menu, select, Add, (&A)うち, home
  Menu, select, Add, (&B)マイミクとか, friend
  Menu, select, Add, (&C)コミュニティ, commu
  Menu, select, Show
  Return

home:
  mixiID = %myID%
  Gosub, contents
  Return

friend:
  GUI, Margin, 1, 1
  Gui, Add, ListView, r15 w150 vMyListView gMyListView, Name|ID
  Gui, -Caption +Resize
  ; デフォルトボタン非表示で Enter に動作割り当て
  Gui, Add, Button, xm+10 Hidden Default gButtonOpenFriend, OpenThis
  ;Gui, Add, Button, x+20 gButtonCancel, Cancel
  Loop, read, %mixiList%
  {
    StringGetPos, mark, A_LoopReadLine, *
    if mark = 0
      continue
    if mark = -1  ; 行頭に*が無いものをリスト化
    StringSplit, nameID, A_LoopReadLine, |
    LV_Add(" ", nameID1, nameID2)
    LV_Modify(1,"Select Focus")  ; 1行目を選択・フォーカス
    LV_ModifyCol(2, "Integer") ; 2列目は数値でソート
  }
  Gui, Show, , FriendList
  Return

  MyListView:
  if A_GuiEvent = DoubleClick
  Gosub, listMenu
  return

  ButtonOpenFriend:
  ; 選択されている(フォーカスがある)項目番号を取得
  SelectedID := LV_GetNext(0, "F")
  if not SelectedID  ; 未選択なら
    {
      Gui, +OwnDialogs
      MsgBox, リスト選択してね
       Return
    }
  else
    LV_GetText(Name, SelectedID, 1)
    LV_GetText(ID, SelectedID, 2)
    Gui, +OwnDialogs
    MsgBox, 1,, "%Name%" のページを開くよ
      IfMsgBox, Cancel
      Return
    mixiID = %ID%
    Gosub, page
    Return

commu:
  GUI, Margin, 1, 1
  Gui, Add, ListView, r15 w150 vComListView gComListView, Community|ID
  Gui, -Caption +Resize
  Gui, Add, Button, xm+10 Hidden Default gButtonOpenCom, OpenThis
  ;Gui, Add, Button, x+20 gButtonCancel, Cancel
  Loop, read, %mixiList%
  {
    StringGetPos, mark, A_LoopReadLine, *
    if mark = -1
      continue
    if mark = 0  ; 行頭に*が有るものをリスト化
    StringSplit, nameID, A_LoopReadLine, |
    StringTrimLeft, nameID1, nameID1, 1 ; 識別名先頭の*をカット
    LV_Add(" ", nameID1, nameID2)
    LV_Modify(1,"Select Focus")  ; 1行目を選択・フォーカス
    LV_ModifyCol(2, "Integer") ; 2列目は数値でソート
  }
  Gui, Show, , CommunityList
  Return

  ComListView:  ; 左ダブルクリック
  if A_GuiEvent = DoubleClick
  Gosub, comlistMenu
  return

  ButtonOpenCom:
  SelectedID := LV_GetNext(0, "F")  ; 
  if not SelectedID  ; 未選択なら
    {
      Gui, +OwnDialogs
      MsgBox, リスト選択してね
       Return
    }
  else
    LV_GetText(CommunityName, SelectedID, 1)
    LV_GetText(CommunityID, SelectedID, 2)
    Gui, +OwnDialogs
    MsgBox, 1,, "%CommunityName%" コミュニティを開くよ
      IfMsgBox, Cancel
      Return
    mixiID = %CommunityID%
    Gosub, community
    Return

;ButtonCancel:

;GuiContextMenu:  ; 右クリック・アプリケーションキー
;  Menu, ContextMenu, Add, リスト編集, editList
;  Menu, ContextMenu, Add, AHK 編集, editScrit
;  Return

listMenu:
    ; LV_GetText(OutputVar, RowNumber [, ColumnNumber])
    LV_GetText(Name, A_EventInfo, 1)
    LV_GetText(ID, A_EventInfo, 2)
    if  %A_EventInfo% = 0
    {
      Gui, +OwnDialogs
      MsgBox, リスト選択してね
      Return
    }
    else
    Gui, +OwnDialogs
    MsgBox, 1,, "%Name%" のページを開くよ
      IfMsgBox, Cancel
      Return
    mixiID = %ID%
    Gosub, page
    Return

comlistMenu:
    LV_GetText(CommunityName, A_EventInfo, 1)
    LV_GetText(CommunityID, A_EventInfo, 2)
    if  %A_EventInfo% = 0
    {
      Gui, +OwnDialogs
      MsgBox, リスト選択してね
      Return
    }
    else
    Gui, +OwnDialogs
    MsgBox, 1,, "%CommunityName%" コミュニティを開くよ
      IfMsgBox, Cancel
      Return
    mixiID = %CommunityID%
    Gosub, community
    Return

GuiEscape:
GuiClose:
ExitApp

contents:
  Menu, my, Add, &A: トップ, top
  Menu, my, Add, &B: プロフィール, profile
  Menu, my, Add, &C: プロフ編集, edit_profile
  Menu, my, Add, &D: 設定変更, edit_account
  Menu, my, Add, &E: お気に入り一覧, bookmark
  Menu, my, Add, &F: マイミク一覧, list_friend
  Menu, my, Add, &G: 日記一覧, list_diary
  Menu, my, Add, &H: 日記コメント一覧, list_comment
  Menu, my, Add, &I: マイミク日記一覧, friend_diary
  Menu, my, Add, &J: 日記投稿, add_diary
  Menu, my, Add, &K: コミュニティ一覧, list_community
  Menu, my, Show
  ExitApp

page:
  Menu, mixi, Add, &A: プロフィール, profile
  Menu, mixi, Add, &B: プロフ写真, show_photo
  Menu, mixi, Add, &C: *マイミク一覧, list_friend
  Menu, mixi, Add, &D: マイミク日記一覧, friend_diary
  Menu, mixi, Add, &E: *日記コメント一覧, list_comment
  Menu, mixi, Add, &F: *コミュニティ一覧, list_community
  Menu, mixi, Add, &G: *お気に入りに追加, add_bookmark
  Menu, mixi, Show
  ExitApp

community:
  Menu, community, Add, &A: メンバー一覧, member
  Menu, community, Add, &B: トピック一覧, bbs
  Menu, community, Show
  ExitApp

top:
  Run, %browser% http://mixi.jp/
  Return
profile:
  Run, %browser% http://mixi.jp/show_profile.pl?id=%mixiID%
  Return
list_friend:
  Run, %browser% http://mixi.jp/list_friend.pl?id=%mixiID%
  Return
edit_profile:
  Run, %browser% http://mixi.jp/edit_profile.pl?id=%mixiID%
  Return
edit_account:
  Run, %browser% http://mixi.jp/edit_account.pl?id=%mixiID%
  Return
list_diary:
  Run, %browser% http://mixi.jp/list_diary.pl?id=%mixiID%
  Return
add_diary:
  Run, %browser% http://mixi.jp/add_diary.pl?id=%mixiID%
  Return
list_comment:
  Run, %browser% http://mixi.jp/list_comment.pl?id=%mixiID%
  Return
friend_diary:
  Run, %browser% http://mixi.jp/new_friend_diary.pl?id=%mixiID%
  Return
bookmark:
  Run, %browser% http://mixi.jp/list_bookmark.pl?id=%mixiID%
  Return
add_bookmark:
  Run, %browser% http://mixi.jp/add_bookmark.pl?id=%mixiID%
  Return
member:
  Run, %browser% http://mixi.jp/list_member.pl?id=%mixiID%
  Return
bbs:
  Run, %browser% http://mixi.jp/list_bbs.pl?id=%mixiID%
  Return
list_community:
  Run, %browser% http://mixi.jp/list_community.pl?id=%mixiID%
  Return
show_photo:
  Run, %browser% http://mixi.jp/show_photo.pl?id=%mixiID%
  Return


-