タグ

ブックマーク / dobon.net (18)

  • 二重起動を禁止する

    二重起動を禁止するここでは、アプリケーションの二重起動を禁止する方法(アプリケーションが一つしか起動しないようにする方法)を説明します。なおここで紹介しているサンプルは、Windowsフォームアプリケーションを想定しています。 Mutexを使用する方法通常は、Mutexを使用する方法が一般的です。.NET FrameworkにはMutexクラスが用意されており、これを使用するのがよいでしょう。 Mutexクラスを使用して二重起動を禁止する例を、以下に示します。ここではエントリポイントで二重起動をチェックしています。エントリポイントが分からないという方は、「アプリケーションのエントリポイントを自作する」をご覧ください。 ''' <summary> ''' アプリケーションのメイン エントリ ポイントです。 ''' </summary> <STAThread> _ Shared Sub Mai

    二重起動を禁止する
    Arahabica
    Arahabica 2014/07/04
  • KeyPressなどのキーイベントをすべてフォームが受け取るようにする: .NET Tips: C#, VB.NET

    KeyPressなどのキーイベントをすべてフォームが受け取るようにする通常フォーム上のコントロールにフォーカスがある時にキーをたたくと、 KeyPress、KeyDown、KeyUpイベントはそのコントロールにのみ渡されます。しかし、フォームのKeyPreviewプロパティをTrueにすると、すべてのキーイベントをまずフォームが受け取り、処理が終了してからフォーカスのあるコントロールに渡されるようになります。また、eパラメータのHandledプロパティをTrueにすることにより、フォーカスのあるコントロールにキーイベントを渡さないようにすることもできます。 次の例では、Form1のKeyDownイベントで受け取ったキーの種類を表示し、Button1をクリックするたびにForm1のKeyPreviewプロパティのTrue/Falseを入れ替えるようにしています。このようなコードでKeyPre

    KeyPressなどのキーイベントをすべてフォームが受け取るようにする: .NET Tips: C#, VB.NET
    Arahabica
    Arahabica 2014/07/04
  • ALTER TABLE DROP COLUMN を使用してNOT NULL の列を削除したい: DOBON.NETプログラミング掲示板過去ログ

    題名: ALTER TABLE DROP COLUMN を使用してNOT NULL の列を削除したい 著者: FutoNeko 日時: 2010/01/07 13:25:55 ID: 26197 この記事の返信元: (なし) この記事への返信: [26198] Re[1]: ALTER TABLE DROP COLUMN を使用してNOT NULL の列を削除したい FutoNeko 2010/01/07 15:54:34 [26199] Re[1]: ALTER TABLE DROP COLUMN を使用してNOT NULL の列を削除したい 魔界の仮面弁士 2010/01/07 15:55:05 ツリーを表示 環境/言語:[SQLServer2005] 分類:[その他] こんにちは。 DBの列修正などを行っております。 環境はSQL Server 2005です。 やりたいことは ・ こ

  • 16進数、8進数、2進数の文字列を整数に変換する

    16進数、8進数、2進数の文字列を整数に変換する 整数を16進数、8進数、2進数の文字列に変換する文字列を整数に変換するにはConvertクラスのToInt32メソッドを、整数を文字列に変換するにはConvertクラスのToStringメソッドを使います。しかし、これ以外の方法も考えられます。 以下に一つずつ説明していきます。 16進数の文字列を整数に変換ConvertクラスのToInt32メソッド等や、Int32構造体等のParseメソッドを使うことにより可能です。 Convert.ToInt32メソッドを使うと、次のようになります。

    16進数、8進数、2進数の文字列を整数に変換する
    Arahabica
    Arahabica 2013/01/15
  • PictureBoxのImageプロパティに関するよくある勘違い

    PictureBoxのImageプロパティに関するよくある勘違い「コントロールやフォームに画像を表示する」ではコントロールに画像を表示する方法として、PictureBoxコントロールのImageLocationやImageプロパティを使用する方法と、コントロールのGraphicsオブジェクトを作成する方法の2つを紹介しています。そちらでも指摘していますが、この2つを併用すると、思ったようにいかなくなるかもしれません。 例えば以下の例では、画像(C:\test\1.jpg)の上に文字列を合成して表示しようとしています。そのために、PictureBoxコントロール(PictureBox1)のImageプロパティを使って画像を表示して、さらにPictureBoxのPaintイベントで文字列を表示しています。さらに、Buttonコントロール(Button1)をクリックすると、その画像をファイルに保

    PictureBoxのImageプロパティに関するよくある勘違い
    Arahabica
    Arahabica 2013/01/10
  • 2つの文字列が等しいかを調べる、大文字小文字、半角全角、ひらがなカタカナの区別をしないで文字列を比較する

    2つの文字列が等しいかを調べる 大文字小文字、半角全角、ひらがなカタカナの区別をしないで文字列を比較する等値演算子String.Equalsメソッドさらなる補足指定したカルチャに依存した比較を行う全角と半角を区別しない、ひらがなとカタカナを区別しないなどString.Compare、String.CompareTo、StrCompなどToLowerまたはToUpperで変換することにより、大文字、小文字を区別しないで比較する等値演算子とEqualsメソッドのどちらが速いか?文字列の一部が一致しているか調べる正規表現やLike演算子この記事への評価、コメント 2つの文字列が等しいかを調べる 大文字小文字、半角全角、ひらがなカタカナの区別をしないで文字列を比較するここでは、2つの文字列が等しいか(つまり、2つのString型データが値等価であるか)を調べる方法について説明します。 なお、値等価

    2つの文字列が等しいかを調べる、大文字小文字、半角全角、ひらがなカタカナの区別をしないで文字列を比較する
    Arahabica
    Arahabica 2012/12/28
    かな
  • アプリケーションの開始時または終了時に行う処理を記述する

    アプリケーションの開始時または終了時に行う処理を記述するここでは、アプリケーション(Windowsフォームアプリケーション)が開始した直後、または終了する直前に何かしたい場合、そのコードをどこに書けばよいかについて説明します。 なおここで紹介する方法は、メインフォームが作成される前、あるいは破棄された後に何か行いたい場合に役に立つ方法です。もしメインフォームがロードされた直後、あるいは閉じられた直後でよいのであれば、LoadイベントやFormClosedイベントを使用する方法で十分です。 エントリポイントメソッドに記述する方法アプリケーションが開始すると、まずエントリポイントメソッド(Mainメソッド)が呼び出されます。そして、エントリポイントメソッドから抜けるとアプリケーションが終了します。つまり、アプリケーションの開始時に行う処理はエントリポイントメソッドの先頭に記述し、アプリケーショ

    アプリケーションの開始時または終了時に行う処理を記述する
    Arahabica
    Arahabica 2012/12/13
  • 線を描く

    直線を描くまずは直線を一引いてみましょう。直線を描画するには、Graphics.DrawLineメソッドを用います。 早速ですが、具体例を示します。次の例ではPictureBoxコントロール(PictureBox1)の座標 (10, 20)-(100, 200) に太さ1の黒い線を描いています。 'Imports System.Drawing '描画先とするImageオブジェクトを作成する Dim canvas As New Bitmap(PictureBox1.Width, PictureBox1.Height) 'ImageオブジェクトのGraphicsオブジェクトを作成する Dim g As Graphics = Graphics.FromImage(canvas) '(10, 20)-(100, 200)に、幅1の黒い線を引く g.DrawLine(Pens.Black, 10,

    線を描く
    Arahabica
    Arahabica 2012/06/28
  • フォームを画面の真ん中(あるいは、任意の位置)に表示する

    フォームを画面の真ん中(あるいは、任意の位置)に表示するフォームをShowやShowDialogメソッドで表示すると、デフォルトでは、フォームはWindowsによって決められた位置に表示されます。ここでは、フォームを画面の中央や、指定した位置等に表示する方法を紹介します。 画面の中央に表示するフォームがはじめに表示される時、画面の真ん中に表示されるようにするには、フォームのStartPositionプロパティをFormStartPosition.CenterScreenにしてから、フォームを表示します。 以下の例では、Form2を画面の真ん中に表示しています。

    フォームを画面の真ん中(あるいは、任意の位置)に表示する
    Arahabica
    Arahabica 2012/06/19
  • DOBON.NET .NET Tips - Drag&Drop(ドラッグ&ドロップ)を行う

    Drag&Dropを行うここではドラッグ&ドロップの例として、あるリストボックス内のアイテムをもう一つのリストボックスにドラッグ&ドロップにより移動させる方法を紹介します。 ドラッグ&ドロップの基まずは、ドロップを受け入れるリストボックスのAllowDropプロパティをTrueにしておきます。 実際にドラッグを開始するには、ドラッグされるアイテムのあるリストボックスのDoDragDropメソッドを呼び出します。ドロップを受け入れるリストボックスでは、リストボックス内にドラッグされた時にDragEnterイベントが発生しますので、ここでドロップを受け入れるか、受け入れるとしたらどのように受け入れるか(コピーか移動か等)を決定します。リストボックスにドロップされるとDragDropイベントが発生しますので、ここでドロップされたデータを取得し、リストボックスへデータを追加します。 次のコードで

    DOBON.NET .NET Tips - Drag&Drop(ドラッグ&ドロップ)を行う
    Arahabica
    Arahabica 2012/06/06
  • 別のフォームのデータを取得、設定する: .NET Tips: C#, VB.NET

    別のフォームのデータを取得、設定するここでは、例えば2つのフォームForm1とForm2があり、Form1からForm2のデータ(例えば、TextBoxに入力されている値)を取得したい(あるいは設定したい)時にどのようにすればよいかについて説明します。 注意:もしForm2が一つしか表示されなくて良いのであれば、「フォームが一つしか表示されないようにする」で紹介している方法を使うのが最も簡単です。そのような場合は、まずはそちらをご覧いただき、その方法では解決できなければ、この記事を参考にしてください。 まず初めにお断りしておきたいのは、状況により最適な方法は異なり、すべてのケースに対応できる適切な方法はないということです。ここでは性急な読者のために初めに「汎用的な方法」を紹介していますが、できるだけこのページを最後までお読みいただき、状況に応じた適切なコードを書けるようになっていただきたい

    別のフォームのデータを取得、設定する: .NET Tips: C#, VB.NET
    Arahabica
    Arahabica 2012/04/23
  • Visual Studioでリソースを管理する

    注意:ここで紹介している方法は、Visual Studio 2005以降でのみ有効です。それ以外では、「画像やテキストファイルを実行ファイルに埋め込む」や「リソースファイルからリソースを取得する」をご覧ください。 Visual Studio 2005からはリソースデザイナを使用して、プロジェクトに追加されているリソースを管理することができます。ここではその使い方を紹介します。 リソースの追加、編集、削除リソースデザイナを表示するには、メニューの「プロジェクト」-「プロパティ」でプロジェクトデザイナを表示し、「リソース」タブを選択します(または、".resx"ファイルをソリューションエクスプローラでダブルクリックします)。 リソースを追加するリソースを追加するには、デザイナ上部にある「リソースの追加」の右側にある下矢印をクリックして、ドロップダウンメニューから追加するリソースの種類を選択しま

    Visual Studioでリソースを管理する
    Arahabica
    Arahabica 2012/02/14
  • 画像やテキストファイルを実行ファイルに埋め込む - .NET Tips (VB.NET,C#...)

    注意:ここで紹介する方法は、主にVisual Studio 2003以前で使用される方法です。Visual Studio 2005以降でもこの方法は可能ですが、「Visual Studioでリソースを管理する」で紹介している方法を使ったほうがよいでしょう。 ここでは、画像やテキストファイルなどのリソースをプロジェクトに追加して、ビルドした時に作成されるアセンブリファイルに埋め込まれるようにする方法を紹介します。なおここで紹介している方法はマネージリソースを埋め込む方法であり、Win32リソースを埋め込む方法は「Win32リソースを実行ファイルに埋め込む」で紹介しています。 リソースを埋め込むVisual Studioの場合、ソリューションエクスプローラでプロジェクトを右クリックして表示されるメニューの「追加」-「既存項目の追加」(または「新しい項目の追加」)から埋め込みたい項目を追加し、プ

    画像やテキストファイルを実行ファイルに埋め込む - .NET Tips (VB.NET,C#...)
    Arahabica
    Arahabica 2012/02/09
  • 文字列を描画したときの大きさを計測する

    注意:画像の表示方法が分からないという方は、まず「コントロールやフォームに画像を表示する」をご覧ください。また、文字列を描画する方法は、「文字を描く」をご覧ください。 MeasureStringやMeasureCharacterRangesメソッドを使用する方法Graphics.DrawStringメソッドで文字列を描画したときの大きさを計測するには、Graphics.MeasureStringメソッドを使います。しかしMeasureStringメソッドはグリフの突出に備えて前後に余白を入れますので、実際に文字列を描画したときの大きさよりも通常は大きく計測されます。 これとは別に、Graphics.MeasureCharacterRangesメソッドを使って計測することもできます。MeasureCharacterRangesメソッドでは、文字列内のどの範囲を計測するか(例えば、3文字目から

    文字列を描画したときの大きさを計測する
    Arahabica
    Arahabica 2012/01/16
  • DOBON.NET .NET Tips

    ここでは、Microsoft .NET Frameworkプログラミング(C#、VB.NET、Visual Studioなど)のTip(小技)を紹介しています(逆引き集のようなものです)。ソースコードやサンプルも多数公開しています。 .NET Tipsをご利用いただく際は、注意事項をお守りください。記事の評価一覧は、こちらで閲覧できます。をクリックすると、その記事を別のウィンドウに表示します。このウィンドウはひとつしか表示されませんので、複数の記事を連続してご覧になりたいときに便利です。が付いているリンクは、来は別のカテゴリに属している記事です。メールマガジン「.NETプログラミング研究」もあります。フォーム(System.Windows.Forms)コントロール(System.Windows.Forms)DataGridコントロール(System.Windows.Forms)DataG

    Arahabica
    Arahabica 2011/08/09
  • 2つのフォルダの同期を行う

    2つのフォルダの同期を行うフォルダをコピーする際に、コピー元のファイルがコピー先に存在しないか、コピー先のファイルより新しい場合に限りコピーし、さらに2つのフォルダのファイル構成が同じになるようにミラーリング(同期)する方法を紹介します。 まずフォルダのコピーについては、「フォルダをコピーする」をご覧ください。 ここではこのコードに手を加えることにします。 まず、File.ExistsメソッドとFile.GetLastWriteTimeメソッドを使い、コピー元のファイルがコピー先に存在しないか、またはコピー先のファイルより新しいか調べ、ファイルをコピーするようにします。 さらにミラーリングをするために、コピー先にあってコピー元にないファイルを探して削除するためのメソッド(ここでは"DeleteNotExistFiles")を作成します。 このようにして作成された新たなCopyDirecto

    2つのフォルダの同期を行う
    Arahabica
    Arahabica 2011/08/08
  • メッセージボックスを表示する: .NET Tips: C#, VB.NET

    メッセージボックスを表示するメッセージボックスを表示するには、MessageBoxクラス(System.Windows.Forms名前空間)のShowメソッドを使用します。メッセージボックスは、エラーメッセージを表示したり、ユーザーに確認を求める時などに便利です。

    メッセージボックスを表示する: .NET Tips: C#, VB.NET
    Arahabica
    Arahabica 2011/06/11
  • 画像のExif情報を取得する、設定する

    画像のExif情報を取得する、設定するデジタルカメラで撮影した画像ファイルには、Exif(Exchangeable Image File Format)情報が含まれていることが多く、撮影したデジカメの名前やメーカー、撮影日時等々の情報が保存されています。ここではこのような画像に埋め込まれたExifの情報を取得する方法と、Exif情報を付加して保存する方法を紹介します。 Exif情報を取得するImageオブジェクトのPropertyItemsプロパティにより、そのイメージが持っているメタデータを取得することができます。Exifの情報はここに含まれています。PropertyItemsプロパティはPropertyItemオブジェクトの配列です。PropertyItemオブジェクトには、タグID、データの型、データの長さ、そしてデータといった情報が含まれています。 以下に簡単な例を示します。指定さ

    画像のExif情報を取得する、設定する
  • 1