プログラミング

rtf内のフォントサイズをいじる

装飾情報の塊であるRtf。いじるとすぐ壊れるのでアンタッチャブルなRtf。 解析したところRtfのフォントサイズは\fs〇〇という形式で指定されていて、〇〇にはフォントサイズの2倍の数値が入っているようです。 例えば各フォントサイズを一律で1.2倍に変更し…

RichTextBoxへの文字列追加はAppendText

例えば改行を追加する場合×の方だとフォント情報消えますよ。知らずにやりがちかと思われます。 '〇 RichTextBox1.AppendText(vbLf) '× RichTextBox1.Text &= vbLf Before 〇を実行 ×を実行

コンボボックスの中身が全部おさまる最適な幅を取得する

結構需要あるんじゃないかと思われる関数です。DropDownWidthにセットしてね。 ''' <summary> ''' 対象のコンボボックスアイテム内で最長の文字列のWidthを取得する ''' </summary> ''' <returns></returns> ''' <remarks></remarks> Friend Function gfGetCboItemMaxWidth(ByVal avCbo As ComboBox, Optional ByVal av…

やってくれたぜwindows update 新元号問題 vol.2

2019年2月某日。 とあるプログラムがある朝突然動かなくなりました。 原因は↓のwindows updateです。 詳細は↓のリンク https://support.microsoft.com/ja-jp/help/4487044/windows-10-update-kb4487044 新元号対応の一環と思われますが、実はこのupdateによ…

どうする新元号問題 in .net Framework

きますよ大問題。対策してますか? サクっとまとめます。 ※.Net以外のことは知らんですがアプローチは似たような感じじゃないでしょうか。 ・予想される障害 和暦を表示する機能のあるシステムにおいて、取得方法によっては平成が終わっても平成が続いちゃい…

単一インスタンスのアプリケーションとGUID

プロジェクトをコピった場合のあるあるVol.2です。 ↓の枠線部分をチェックすると、exeの複数起動はできなくなります。2重起動制御に便利ですね。 んで問題なのが、以下の場合。 ①プロジェクトAをコピってプロジェクトBを作成 ②単一インスタンスにチェックを…

VB・VCでプロジェクトを移動した場合のDLL参照パス

作業フォルダからデスクトップにプロジェクトフォルダを移動、プロジェクト開いたら参照先が総崩れってことありませんか?対策ありますよ☺ MyProject→参照→参照パスボタンをクリックするとこんな画面が起動します。 参照しているDLLがあるフォルダを入力 フ…

SQLSERVERで列の存在チェック、追加、編集、削除

DBAのテンプレにどーぞ。 IF (SELECT COUNT(*) FROM SYS.COLUMNS WHERE NAME = '[列名]' AND OBJECT_ID = Object_ID('[dbo].[テーブル名]')) = 0 BEGIN ALTER TABLE [テーブル名] ADD [列名] [型] [NULL/NOT NULL] PRINT '追加しました' END ELSE PRINT '既…

SQLSERVERのバインド変数でNULLにUPDATE

もはやタイトルの時点で普通の人は何言ってるかわからないと思いますが。 NULL可のフィールドをNULLにUPDATEする考慮って抜けがちです。 oCommand.Parameters.Add(New SqlParameter("@フィールド名", System.Data.SqlTypes.SqlString.Null)) 禁則文字のエス…

再帰的関数のすすめ2

vbコントロール色ぬりぬり編です。Formのコントロールまとめて塗れます。色は自分できめてね☺ Imports System.Drawing Imports System.Windows.Forms Public gCurColors As gStcCtrlColor '現在セットされている配色値構造体 '配色値構造体 Public Structure…

再帰的関数のすすめ

再帰関数が一発で決まると快感よね。 ①TreeViewでエクスプローラー ''' <summary> ''' 対象フォルダを読み込み中身をツリービューに表示する ''' </summary> ''' <param name="avTargetTrv">対象ツリービューコントロール</param> ''' <param name="avTargetDir">対象フォルダ</param> ''' <param name="avParentNode">追加先ノード。未指定の場合ツリービューにノード新規作成</param> Pu…

XMLDocumentからXML文字列をインデントを整えて取得

おはようございます。 みなさんXMLDocumentクラスには日頃からお世話になっていることでしょう。 XmlDocument クラス (System.Xml) このXMLDocumentからXML文字列を取得したい場合、InnerXMLで取得できます。 が、<rakko>らっこ</rakko><koara>こあら</koara><rakuda>らくだ</rakuda>…というように改行もイン…

PreferredSizeとMaximumSize

改行や折り返しを含む文字列。これを格納するのに丁度いいコントロールの高さを知りたい。そういうことVBやC#いじくってると多々あります。 PreferredSizeという「最適なサイズを示します」とMSDNでざっくりとした解説がされたプロパティがあるのですが、こ…

SQLSERVER、ORACLEで分割SELECT

SQLお役立ちメモ。 例えば500万レコードくらいあるテーブルから全件SELECTしてDataTableとかに突っ込むと、端末によりますが大体メモリ足りなくなります。500万件一括取得時の並び順はそのままに、レコードだけ10万件ずつ取り出したい。データコンバートツー…