C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

全過去ログを検索

<< 0 >>
■6443  Re[9]: 文字列の全角半角判定
□投稿者/ hei -(2007/08/11(Sat) 00:10:52)
    話がかみ合いませんね(^^;

    No6410 (YuO さん) に返信
    > そもそも,文字を扱う上での「全角」とか「半角」って何ですか?
    > 混在する,というのは「全角」とか「半角」というものが存在することが前提だと思うのですが,
    > そもそもその前提に対して異なる立場の人に対して前提を押し通そうとしているから話が通じていないのだと思います。

    頻繁に出てくる文字で例を挙げます。
    全角とは「0123456789」で、
    半角とは「0123456789」です(あえて断言します)。

    ># ちなみに私は,「全角」「半角」はフォントの世界だけの話だと思っていて,
    >文字集合や文字コードとは一切の関係を持たないと考えています。

    例えばユーザーが入力した郵便番号を処理するとします。
    ユーザーが入力した「123−4567」と「123-4567」は違う郵便番号ですか?
    これらの文字を対比するときに使う用語は、
    一般に「全角の数字・半角の数字」ではないですか?

    私はアルバイトが入力したデータをチェック・整形するツールも作っていますが、
    日本語のキーボードは全く同じ文字を表現するのに、
    一般に「全角半角」という異なった文字を出力するので
    これらのチェック・変換は頻繁に行っています。

    全角・半角とは何かの厳密な定義は学者などが行えばよくて、
    現場のプログラマがするべきことは、
    「123−4567」と「123-4567」を同じ郵便番号とみなすことだと思うのです。
    おそらく質問者もこのような必要性があって質問したのだと思います。
    (■No6362の報告すらもないのは残念ですが)
    みなさんも、定義がどうではなくこのような処理はやってるのではと思います。

    No6411 (Jitta さん) に返信
    >前者はプロポーショナルフォントの出現で意味を失い、
    >後者はUTF-16では一定、UTF-8では3倍角や4倍角もありえる。
    前者を半角と呼ぶのは初めて聞きました。しかし実務で問題になることはないでしょう。
    後者に関しては私の知識不足があるかと思いますが、
    unicodeではバイト数で管理するより文字数で管理するほうが普通ではないでしょうか?


    私はこれまで学んできた中で、
    全角半角のチェック・変換の質問には「VBのStrConv関数だよ」という
    解説・回答はたくさん見てきましたが、
    ここまで「厳密な定義」にこだわった意見にあったのは初めてです。
    もちろんそれなりの意味があるのでしょうが、
    結局理解できませんでした。
記事No.6223 のレス /過去ログ17より / 関連記事表示
削除チェック/

■86758  .Net内部イメージの利用方法
□投稿者/ mayoppes -(2018/03/12(Mon) 11:41:19)

    分類:[VB.NET/VB2005 以降] 

    2018/03/12(Mon) 11:43:22 編集(投稿者)

    VB2010でWindowsFormアプリを作っています。
    以下の事が解らないので、教えてください。

    (1)PrintPreviewControlを使って、自作の印刷プレビューFormを作成しました。
    このForm内に配置したToolStripメニューにPrintPreviewDialogのToolStripボタン
    のイメージを利用したいのですが、指定方法が解りません。
    「ズーム」「1ページ」「2ページ」といったボタンのイメージの事です。

    自分で作成したものや、外部イメージであればプロジェクトにリソースとして取り込んで
    ToolStripSplitButton.Image = My.Resources.何某
    としておりますが、今回のような場合は、どう記載すればよいか解りません。
    御教示、お願いします。

    (2)又、同じような事だと思うのですが、ToolStripの右クリックから「標準項目の挿入」を
    実行すると、I/Oや編集関連のアイコンが追加されます。
    これを.Netが自動で作成するデザイナのコードを確認すると以下のようになっています。
    Me.印刷PToolStripButton1.Image = CType(resources.GetObject("印刷PToolStripButton1.Image"), System.Drawing.Image)

    このGetObjectの引数「"印刷PToolStripButton1.Image"」は他に「どのようなものが利用できるか」、
    「どこを検索すればわかるのか」、といった事が知りたいです。
    御教示、お願い致します。
親記事 /過去ログ149より / 関連記事表示
削除チェック/

■86760  Re[1]: .Net内部イメージの利用方法
□投稿者/ 魔界の仮面弁士 -(2018/03/12(Mon) 12:31:22)
    2018/03/12(Mon) 16:58:56 編集(投稿者)

    No86758 (mayoppes さん) に返信
    > このForm内に配置したToolStripメニューにPrintPreviewDialogのToolStripボタン
    > のイメージを利用したいのですが、指定方法が解りません。

    ToolStrip を、丸ごと

     Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
      Me.Controls.Remove(Me.ToolStrip1)
      Me.ToolStrip1.Dispose()
      Me.ToolStrip1 = Me.PrintPreviewDialog1.Controls.OfType(Of ToolStrip).FirstOrDefault()
      Me.Controls.Add(Me.ToolStrip1)
     End Sub

    のように付け替える……というのは強引すぎるので無しとして。
    たとえばこんな感じでどうでしょう。

     Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
      Dim bmp As New Bitmap(GetType(PrintPreviewDialog), "PrintPreviewStrip.bmp")
      bmp.MakeTransparent()
      Me.ImageList1.Images.AddStrip(bmp)
      Me.ToolStrip1.ImageList = Me.ImageList1
      Me.ToolStrip1.Items(0).Text = "印刷"
      Me.ToolStrip1.Items(0).ImageIndex = 0
      Me.ToolStrip1.Items(1).Text = "ズーム"
      Me.ToolStrip1.Items(1).ImageIndex = 1
      Me.ToolStrip1.Items(2).Text = "1 ページ"
      Me.ToolStrip1.Items(2).ImageIndex = 2
      Me.ToolStrip1.Items(3).Text = "2 ページ"
      Me.ToolStrip1.Items(3).ImageIndex = 3
      Me.ToolStrip1.Items(4).Text = "3 ページ"
      Me.ToolStrip1.Items(4).ImageIndex = 4
      Me.ToolStrip1.Items(5).Text = "4 ページ"
      Me.ToolStrip1.Items(5).ImageIndex = 5
      Me.ToolStrip1.Items(6).Text = "6 ページ"
      Me.ToolStrip1.Items(6).ImageIndex = 6
     End Sub



    > (2)又、同じような事だと思うのですが、ToolStripの右クリックから「標準項目の挿入」を
    > 実行すると、I/Oや編集関連のアイコンが追加されます。
    > これを.Netが自動で作成するデザイナのコードを確認すると以下のようになっています。
    > Me.印刷PToolStripButton1.Image = CType(resources.GetObject("印刷PToolStripButton1.Image"), System.Drawing.Image)
    > このGetObjectの引数「"印刷PToolStripButton1.Image"」は他に「どのようなものが利用できるか」、
    > 「どこを検索すればわかるのか」、といった事が知りたいです。

    ソリューション エクスプローラーで、[すべてのファイルを表示]を選択し、
    Form1.vb の子階層に表示される Form1.resx を見れば分かります。


    > ToolStripSplitButton.Image = My.Resources.何某

    この場合は、プロジェクト全体に対する埋め込みリソースの参照を意味しますね。

    一方、フォーム単位の埋め込みリソースでは
     Dim resources As New System.ComponentModel.ComponentResourceManager(GetType(Form1))
     Me.印刷PToolStripButton1.Image = CType(resources.GetObject("印刷PToolStripButton1.Image"), System.Drawing.Image)
    のように指定されます。
    複数のフォームで同じ画像を使いまわす場合は、My.Resources の方が効率的ですね。

    また、Professional Edition 以上の Visual Studio では、
    埋め込みに使える画像集が、Visual Studio のインストール先の
     VS2010 → Microsoft Visual Studio 10.0\Common7\VS2010ImageLibrary\1041\VS2010ImageLibrary.zip
     VS2008 → Microsoft Visual Studio 9.0\Common7\VS2008ImageLibrary\1041\VS2008ImageLibrary.zip
     VS2005 → Microsoft Visual Studio 8\Common7\VS2005ImageLibrary\VS2005ImageLibrary.zip
     VS.NET2003 → Microsoft Visual Studio .NET 2003\Common7\Graphics
    に用意されています。
    ただし VS2012 以降では同梱されなくなっており、Download Center からの入手が必要となります。
    https://www.microsoft.com/en-us/download/details.aspx?id=35825
記事No.86758 のレス /過去ログ149より / 関連記事表示
削除チェック/

■86762  Re[2]: .Net内部イメージの利用方法
□投稿者/ mayoppes -(2018/03/12(Mon) 13:56:41)
    No86760 (魔界の仮面弁士 さん) に返信
    非常に丁寧な説明、ありがとうございます。

    第2案の個別に追加する方法で実装させて頂きます。
    第1案の丸ごと入替の方法も参考になりました。
    今後、他の案件で使えるかもしれません。

    Form単位とProject単位でのイメージの扱い方の違いも理解しました。
    確かにForm1.resxにForm単位のイメージが存在するのを確認しました。

    本当に、ありがとうございました。
記事No.86758 のレス / END /過去ログ149より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -