2017年11月21日

【Access】トグルボタンのベベル効果を設定する


トグルボタンのベベル効果の設定です。

ベベル効果は次の表のとおりとなっています。
効果
0なし
1
2額縁風
3交差
4クールスラント
5角度
6ソフトラウンド
7浮き上がり
8スロープ
9切り込み
10スケール
11ハードエッジ
12アールデコ


実際のイメージは次のような感じになります。

0 なし


Me.toggle1.Bevel = 0
Me.toggle1.Caption = "なし"


1 円


Me.toggle1.Bevel = 1
Me.toggle1.Caption = "円"


2 額縁風


Me.toggle1.Bevel = 2
Me.toggle1.Caption = "額縁風"


3 交差


Me.toggle1.Bevel = 3
Me.toggle1.Caption = "交差"


4 クール スラント


Me.toggle1.Bevel = 4
Me.toggle1.Caption = "クールスラント"


5 角度


Me.toggle1.Bevel = 5
Me.toggle1.Caption = "角度"


6 ソフト ラウンド


Me.toggle1.Bevel = 6
Me.toggle1.Caption = "ソフトラウンド"


7 浮き上がり


Me.toggle1.Bevel = 7
Me.toggle1.Caption = "浮き上がり"


8 スロープ


Me.toggle1.Bevel = 8
Me.toggle1.Caption = "スロープ"


9 切り込み


Me.toggle1.Bevel = 9
Me.toggle1.Caption = "切り込み"


10 スケール


Me.toggle1.Bevel = 10
Me.toggle1.Caption = "スケール"


11 ハード エッジ


Me.toggle1.Bevel = 11
Me.toggle1.Caption = "ハードエッジ"


12 アール デコ


Me.toggle1.Bevel = 12
Me.toggle1.Caption = "アールデコ"


<関連記事>
【Access】トグルボタンのオン・オフのときの表示を変える






2017年11月20日

【Access】トグルボタンのオン・オフのときの表示を変える


トグルボタンのオン・オフのときの表示を変える方法です。

たとえば、このようなフォームにトグルボタンが貼り付けてあるとします。


このトグルボタンをオン・オフしたときに、ボタンのキャプションと前景色を変更するには次のように記述します。
Private Sub toggle1_AfterUpdate()

    If Me.toggle1.Value Then
        'ON
        Me.toggle1.Caption = "ON"
        Me.toggle1.ForeColor = RGB(255, 0, 0)
    Else
        'OFF
        Me.toggle1.Caption = "OFF"
        Me.toggle1.ForeColor = RGB(0, 0, 0)
    End If
    
End Sub
イベントは、更新後処理です。
ボタンが押されているか押されてないかは、Valueプロパティで判断します。
ValueがTrueなら押されている。ValueがFalseなら押されていないことになります。

2017年11月19日

【PowerShell】Windowsフォームにテキストボックスを表示して入力できるようにする


前回、『Windowsフォームを作成する』でWindowsフォームの表示をしてみましたが、今回は、Windowsフォームにテキストボックスを表示して入力できるようにしてみました。

まあ、マイクロソフトの下記のサイトのコードをほぼパクッてるんですが、テキストボックスをマルチラインにしたり若干アレンジを加えてますのでよかったら参考にしてみてください。
https://docs.microsoft.com/ja-jp/powershell/scripting/getting-started/cookbooks/creating-a-custom-input-box?view=powershell-5.1

Add-Type -AssemblyName System.Windows.Forms
Add-Type -AssemblyName System.Drawing

#フォーム
$form = New-Object System.Windows.Forms.Form 
$form.Text = "入力フォーム作成テスト"
$form.Size = New-Object System.Drawing.Size(400,240) 
$form.StartPosition = "CenterScreen"

#ラベル
$label = New-Object System.Windows.Forms.Label
$label.Location = New-Object System.Drawing.Point(20,20) 
$label.Size = New-Object System.Drawing.Size(340,20) 
$label.Text = "何か入力してください"
$form.Controls.Add($label) 

#テキストボックス
$textBox = New-Object System.Windows.Forms.TextBox 
$textBox.Location = New-Object System.Drawing.Point(20,40) 
$textBox.Multiline = $True
$textBox.AcceptsReturn = $True
$textBox.AcceptsTab = $True
$textBox.WordWrap = $True
$textBox.ScrollBars = [System.Windows.Forms.ScrollBars]::Vertical
$textBox.Anchor = (([System.Windows.Forms.AnchorStyles]::Left) `
              -bor ([System.Windows.Forms.AnchorStyles]::Top) `
              -bor ([System.Windows.Forms.AnchorStyles]::Right) `
              -bor ([System.Windows.Forms.AnchorStyles]::Bottom))
$textBox.Size = New-Object System.Drawing.Size(340,100) 
$form.Controls.Add($textBox) 

#OKボタン
$OKButton = New-Object System.Windows.Forms.Button
$OKButton.Location = New-Object System.Drawing.Point(200,160)
$OKButton.Size = New-Object System.Drawing.Size(75,23)
$OKButton.Text = "OK"
$OKButton.Anchor = (([System.Windows.Forms.AnchorStyles]::Right) `
               -bor ([System.Windows.Forms.AnchorStyles]::Bottom))
$OKButton.DialogResult = [System.Windows.Forms.DialogResult]::OK
$form.AcceptButton = $OKButton
$form.Controls.Add($OKButton)

#キャンセルボタン
$CancelButton = New-Object System.Windows.Forms.Button
$CancelButton.Location = New-Object System.Drawing.Point(285,160)
$CancelButton.Size = New-Object System.Drawing.Size(75,23)
$CancelButton.Text = "Cancel"
$CancelButton.Anchor = (([System.Windows.Forms.AnchorStyles]::Right) `
                   -bor ([System.Windows.Forms.AnchorStyles]::Bottom))
$CancelButton.DialogResult = [System.Windows.Forms.DialogResult]::Cancel
$form.CancelButton = $CancelButton
$form.Controls.Add($CancelButton)

#フォームを常に手前に表示
$form.Topmost = $True

#フォームをアクティブにし、テキストボックスにフォーカスを設定
$form.Add_Shown({$textBox.Select()})

#フォームを表示
$result = $form.ShowDialog()

if ($result -eq [System.Windows.Forms.DialogResult]::OK)
{
    #OKボタンが押された場合、テキストボックスの内容を取得
    $x = $textBox.Text
    $x
}

実行結果







2017年11月18日

【サクラエディタ】矩形選択からの置換




サクラエディタには矩形(くけい)選択という便利な機能があります。

矩形選択とは文字通り長方形の形での選択のことを言います。
そして、これがどうして便利かというと、文字列を列単位でコピーしたり切り取ったり貼り付けたり、または挿入することが出来るからです。あまり使う機会はないかもしれませんが、この機能があると作業が一気に楽になります。


たとえば、このようなカンマ区切りの文字列があったとします。



この文字列の左から4列目の「11111」の部分を「aaaaa」に置換するには次の行います。


まず、矩形選択の始まりの箇所にカーソルを合わせます。



カーソルを合わせたら、ここで [Shift]キー + [F6]キー を押します。

矩形範囲選択モード
[Shift] + [F6]


すると、矩形範囲選択モードに変わりますので、矢印キーを使い対象の部分を選択していきます。



このような感じで「11111」の部分だけ選択できました。



選択できたら次に「a」の文字を入力していきます。


5回「a」を入力するこのような状態になります。



最後に[Delete]キーを押して、選択されてる「11111」の部分を削除するとこのようになります。



<参考サイト>
矩形選択 | サクラエディタヘルプ

<関連記事>
【サクラエディタ】矩形貼り付けを行う
【サクラエディタ】1から順番に数字を縦に出力するマクロ
【サクラエディタ】タブの切り替えを行うショートカット
【サクラエディタ】新規作成するショートカット
【サクラエディタ】矩形選択からの置換
【サクラエディタ】PPAマクロを使ってみる


2017年11月17日

【Access】タブコントロールでタブにマウスカーソルを重ねたときに文字色を変える


タブコントロールでタブにマウスカーソルを重ねたときに文字色を変える方法です。

たとえば、このようなタブコントロールが貼り付けてあるフォールがあるとします。



このタブコントロールのタブにマウスカーソルを重ねたときに文字色を「赤」にするには次のように記述します。
Private Sub Form_Load()

    Me.tabCtrl.HoverForeColor = RGB(255, 0, 0)
    
End Sub

実行結果







2017年11月16日

【Access】タブコントロールでタブにマウスカーソルを重ねたときに背景色を変える


タブコントロールでタブにマウスカーソルを重ねたときに背景色を変える方法です。

たとえば、このようなタブコントロールが貼り付けてあるフォールがあるとします。



このタブコントロールのタブにマウスカーソルを重ねたときに背景色を「赤」にするには次のように記述します。
Private Sub Form_Load()

    Me.tabCtrl.HoverColor = RGB(255, 0, 0)
    
End Sub

実行結果







2017年11月15日

【Access】タブコントロールで表示するページを指定する


タブコントロールで表示するページを指定する方法です。

たとえば、このようにフォームにタブコントロールが貼り付けてあるとします。



タブコントロールにはページが2つあり、それぞれのページインデックスは「ページ0」=0、「ページ1」=1となっています。



このフォームを開いたときにタブコントロールの「ページ1」が表示されてくるようにするには、フォームのLoadイベントプロシージャに次のように記述します。
Private Sub Form_Load()

    Me.tabCtrl.Value = 1
    
End Sub
タブコントロールのValueプロパティにページインデックスを指定するとそのページを表示できます。