C#の開発環境もVSCodeで (icon, image)
Back
Alt+HOME
Visual Studioは便利だがとても重く、また他のOSでの環境も考慮するとVisual Studio Code(VSCode)を使った方が導入し易いとの記述も見かけて、自分の環境もCやPythonと同じ環境として整理できると思って早速猪突猛進してしまった。
しかし、その新しい環境に慣れるのにも大変で、C#のコードもそのままではすんなり行かず、ChatGPT先生に大変お世話になったこの1ヶ月だった。ど素人の質問にかなりの忍耐で答え続けてくれた先生に感謝の覚え書きである。
フォームのタイトルバーやファイル名にアイコンを表示
Visual Studioではアイコンを指定するGUIが存在したが、VSCodeでは手書きで指定する必要が有る。
- アイコン用ファイル(icon.ico)を準備し、プロジェクトのルートディレクトリーに追加する。
- プロジェクトファイルを編集する。
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
:
<ApplicationIcon>icon.ico</ApplicationIcon>
:
</PropertyGroup>
<ItemGroup>
<Content Include="icon.ico">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
</ItemGroup>
</Project>
CopyToOutputDirectory の指定はビルドしたとき常にその出力先のルートディレクトリーにコピーされるようにするため。
又、iconファイルをサブフォルダに入れた場合は、上記該当箇所を次のように相対パスに変更する。
(エスケープしたバックスラッシュ: \\)
<ApplicationIcon>subfolder\\icon.ico</ApplicationIcon>
<Content Include="subfolder\\icon.ico">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
- ビルドしてみて出力ファイルを確認すると図のようにファイル名の前のアイコンが指定のものになっている。これをプロジェクトアイコンと言う。
dotnet build
- 次にフォームのタイトルバー左端に指定のタイトルアイコンを表示させる。
public FrmMain()
{
InitializeComponent();
// フォームアイコンの設定
Icon = new Icon("subfolder\\icon.ico");
}
dotnet build
dotnet run
フォームにイメージを表示する
前項の 4.タイトルバーのアイコン指定の上に有る InitializeComponent(); で呼び出されるメソッドの中にイメージに関するものが有る場合、
ファイル名のみの場合はアプリのルートフォルダに、そのイメージを置く。サブフォルダに保存したい場合はそのファイルパスを変更する。
private void InitializeComponent()
{
//
// PicTop
//
PicTop.Anchor = AnchorStyles.Bottom | AnchorStyles.Left;
PicTop.BackColor = Color.Transparent;
PicTop.Location = new Point(6, 117);
PicTop.Image = Image.FromFile("subfolder\\image.png");
PicTop.Name = "PicTop";
PicTop.Size = new Size(625, 351);
PicTop.TabIndex = 19;
PicTop.TabStop = false;
Back
Alt+HOME
この 作品 は
クリエイティブ・コモンズ 表示 - 非営利 - 改変禁止 4.0 国際 ライセンス
の下に提供されています。
English
Powered by