画面位置復元 (subSetFormIchi)

 

‘INIファイルから値を取得する関数の宣言
Public Declare Function GetPrivateProfileString Lib "kernel32.dll" _
                 Alias "GetPrivateProfileStringA" _
                 (ByVal lpAppName As String, _
                  ByVal lpKeyName As String, _
                  ByVal lpDefault As String, _
                  ByVal lpReturnedString As String, _
                  ByVal nSize As Long, _
                  ByVal lpFileName As String) As Long

‘/*************************************************/
‘/* [ 名 称 ] subSetFormIchi   : 画面位置復元処理                            
‘/* [ 引 数 ] objForm          : 入力 (フォームオブジェクト)                 
‘/* [ 戻 値 ] なし                                                           
‘/* [ 概 要 ] 前回表示した画面位置をINIファイルから取得し、                  
‘/*           フォーム位置をセットし直す。Form_Loadイベント時に呼び出す。     
‘/* [ 履 歴 ] 2003/11/01 新規 v01.00 会社名 担当者名                      
‘/*************************************************/
Public Sub subSetFormIchi(ByRef objForm As Form)
On Error GoTo Err_subSetFormIchi
‘変数宣言———————————————————————
    Dim strValue        As String * 1024    ‘WindowsAPIの戻り値変数
    Dim lngStrLength    As Long             ‘WindowsAPIに渡す変数の長さ変数
    Dim lngReturnLength As Long             ‘WindowsAPIの動作結果値変数
    Dim strPathFile     As String           ‘INIファイルのフルパス変数
    Dim intIchi         As Integer          ‘フォームの位置変数
‘—————————————————————————–

    ‘INIファイルのフルパスを編集する。
    strPathFile = App.Path & "\" & App.EXEName & ".INI"

    ‘バッファの長さを指定する
    lngStrLength = Len(strValue)  





    ‘———————————————————
    ‘INIファイルから値を取得する
    lngReturnLength = GetPrivateProfileString(objForm.Name, _
                                              "TOP", _
                                              objForm.Top, _
                                              strValue, _
                                              lngStrLength, _
                                              strPathFile)
    ‘If 取得した値がある場合
    If lngReturnLength > 0 Then
        ‘取得した値を戻り値する
        intIchi = Val(Left$(strValue, lngReturnLength)) 
    Else
        ‘戻り値を空白にセットする
        intIchi = objForm.Top 
    End If    

    ‘TOP位置をセットする。
    objForm.Top = intIchi    

    ‘———————————————————
    ‘INIファイルから値を取得する
    lngReturnLength = GetPrivateProfileString(objForm.Name, _
                                              "LEFT", _
                                              objForm.Left, _
                                              strValue, _
                                              lngStrLength, _
                                              strPathFile)
    ‘If 取得した値がある場合
    If lngReturnLength > 0 Then
        ‘取得した値を戻り値する
        intIchi = Val(Left$(strValue, lngReturnLength)) 
    Else
        ‘戻り値を空白にセットする
        intIchi = objForm.Left 
    End If

    ‘LEFT位置をセットする。
    objForm.Left = intIchi

    ‘関数を終了する
    Exit Sub  

Err_subSetFormIchi:
    ‘ランタイムエラーが発生したのでエラー処理をする
    Call subErrSyori("subSetFormIchi", Err.Number, Err.Description)
End Sub

 

Visual Basic TIPS集

初期登録日: 2003年11月09日

最終更新日: 2003年11月10日

< Home ヘ戻る >


キーボード

ブラウザ画面の文字サイズを変更するショートカットキー

  1. [ CTRL ] + [ + ]  :  文字を大きく
  2. [ CTRL ] + [ ]  :  文字を小さく

Shortcut Keys

  1. [ CTRL ] + [ + ]  :  Up the font size
  2. [ CTRL ] + [ ]  :  Down the font size