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

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

C# と VB.NET の入門サイト

Re[5]: FontDialogの情報を保存したい


(過去ログ 55 を表示中)

[トピック内 7 記事 (1 - 7 表示)]  << 0 >>

■31095 / inTopicNo.1)  FontDialogの情報を保存したい
  
□投稿者/ chana (1回)-(2009/01/15(Thu) 11:33:47)

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

2009/01/15(Thu) 11:36:14 編集(投稿者)

はじめまして。

VB2005(windows Vista)で開発しています。
自作ソフト内でフォントを選択できるようにしてみたのはいいのですが
変更した内容(フォント)を保存できずに困っています。

FontDialogで指定する所まではなんとかできましたが、FontDialogのデータを保存
してみましたがエラーになってしまいます。
いろいろ調べてみましたがわかりません。
どなたかご教授お願いします。

<宣言>
Public JapaneseFont(3) As FontDialog

<Form_Load>
JapaneseFont(0) = New FontDialog
JapaneseFont(1) = New FontDialog
JapaneseFont(2) = New FontDialog
JapaneseFont(3) = New FontDialog

<保存>
FileOpen(n, filename, OpenMode.Binary)
FilePut(n, JapaneseFont)

<エラー>
{Microsoft.VisualBasic.ErrObject}
Description: "型 'FontDialog' を持つファイル入出力 (I/O) は無効です。"
Erl: 0
HelpContext: 0
HelpFile: ""
LastDllError: 0
Number: 5
Source: "Microsoft.VisualBasic"



引用返信 編集キー/
■31096 / inTopicNo.2)  Re[1]: FontDialogの情報を保存したい
□投稿者/ επιστημη (1522回)-(2009/01/15(Thu) 11:42:11)
επιστημη さんの Web サイト
> FontDialogで指定する所まではなんとかできましたが、FontDialogのデータを保存
> してみましたがエラーになってしまいます。

保存したいのはFontDialogのデータ(すなわちFont)ですよね?
「FontDialogそのもの」ではありませんよね?

> <宣言>
> Public JapaneseFont(3) As FontDialog
> ...
> <保存>
> FileOpen(n, filename, OpenMode.Binary)
> FilePut(n, JapaneseFont)

「FontDialogそのもの」を保存しようとしてません?

引用返信 編集キー/
■31098 / inTopicNo.3)  Re[2]: FontDialogの情報を保存したい
□投稿者/ chana (2回)-(2009/01/15(Thu) 11:50:51)
chana さんの Web サイト
No31096 (επιστημη さん) に返信
>>FontDialogで指定する所まではなんとかできましたが、FontDialogのデータを保存
>>してみましたがエラーになってしまいます。
>
> 保存したいのはFontDialogのデータ(すなわちFont)ですよね?
> 「FontDialogそのもの」ではありませんよね?
>
>><宣言>
>>Public JapaneseFont(3) As FontDialog
>>...
>><保存>
>>FileOpen(n, filename, OpenMode.Binary)
>>FilePut(n, JapaneseFont)
>
> 「FontDialogそのもの」を保存しようとしてません?
>

お世話になります。

「FontDialogそのもの」を保存できないのでしょうか?
代わりの変数を用意して保存、読み込みをしないといけないんでしょうか?
Font.Name、Font.MinSizeなどに分けて?

混乱してしまって・・素人ですみません。


引用返信 編集キー/
■31099 / inTopicNo.4)  Re[3]: FontDialogの情報を保存したい
□投稿者/ επιστημη (1523回)-(2009/01/15(Thu) 11:54:57)
επιστημη さんの Web サイト
> 「FontDialogそのもの」を保存できないのでしょうか?

"型 'FontDialog' を持つファイル入出力 (I/O) は無効です。" って怒られたんでしょ?


> 代わりの変数を用意して保存、読み込みをしないといけないんでしょうか?
> Font.Name、Font.MinSizeなどに分けて?

FontはISerializableだからそのまままるっと保存/復元できそうですけど。

引用返信 編集キー/
■31100 / inTopicNo.5)  Re[3]: FontDialogの情報を保存したい
□投稿者/ 魔界の仮面弁士 (959回)-(2009/01/15(Thu) 12:20:43)
No31098 (chana さん) に返信
> 「FontDialogそのもの」を保存できないのでしょうか?

たとえば、「メモ帳」もどきを作るとしたら、保存するのは
「TextBox そのもの」ではなく、TextBox1.Text から得られる「文字列」です。

この場合も同様で、保存すべきは FontDialog ではなく、
Font プロパティや Color プロパティの値です。

> 代わりの変数を用意して保存、読み込みをしないといけないんでしょうか?
FontConverter / ColorConverter を利用して、データを文字列化して保存するとか。
引用返信 編集キー/
■31101 / inTopicNo.6)  Re[4]: FontDialogの情報を保存したい
□投稿者/ chana (3回)-(2009/01/15(Thu) 12:28:16)
chana さんの Web サイト
No31100 (魔界の仮面弁士 さん) に返信
> ■No31098 (chana さん) に返信
>>「FontDialogそのもの」を保存できないのでしょうか?
>
> たとえば、「メモ帳」もどきを作るとしたら、保存するのは
> 「TextBox そのもの」ではなく、TextBox1.Text から得られる「文字列」です。
>
> この場合も同様で、保存すべきは FontDialog ではなく、
> Font プロパティや Color プロパティの値です。
>
>>代わりの変数を用意して保存、読み込みをしないといけないんでしょうか?
> FontConverter / ColorConverter を利用して、データを文字列化して保存するとか。

επιστημη @さん
魔界の仮面弁士さん

ありがとうございます。
両方とも試してみようと思います。

素人なので時間がかかると思いますが、後ほどご報告させて頂きます。
 
引用返信 編集キー/
■31106 / inTopicNo.7)  Re[5]: FontDialogの情報を保存したい
□投稿者/ chana (4回)-(2009/01/15(Thu) 13:42:38)
chana さんの Web サイト
ConvertToString 
ConvertFromString

を使ってフォント名を文字列にして保存、復元するようにしました。
これでやっと前に進めます。
大変助かりました、ありがとうございました。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -