ページ

ラベル NSFontPanel の投稿を表示しています。 すべての投稿を表示
ラベル NSFontPanel の投稿を表示しています。 すべての投稿を表示

2009年5月21日木曜日

フォントを変更する(2) 現在のフォントをNSFontPanelへ反映させる

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク

今度は現在使っているフォントを NSFontPanelへ反映してみる。
これには NSFontPanel#setPanelFont:isMultiple: を使う。

こんな感じ。

- (IBAction)showFontPanel:(id)sender
{
NSFontPanel* panel = [NSFontPanel sharedFontPanel];
WebPreferences* pref = [_web preferences];
NSFont* font = [NSFont fontWithName:[pref standardFontFamily] size:13];
[panel makeKeyAndOrderFront:self];
[panel setPanelFont:font isMultiple:NO];

[[NSFontManager sharedFontManager] setDelegate:self];
}


するとこうなる。


NSFontPanelを表示すると Times, 13pt が選択されている。

2009年5月20日水曜日

フォントを変更する(1) NSFontPanel表示

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク

(前回からの続き)

次は「選択ボタン」を押したらフォントパネルを表示しよう。Interface Builderでできると思いきや方法がわからなかった。

とりあえずはADCのサンプルなどを参考にコードを書く。
PDF Annotation Editor

まずアクションを追加する。
AppController.h

- (IBAction)showFontPanel:(id)sender;


Interface Builderでここへ「選択ボタン」のアクションを追加する。

次にボタンが押されたときのコードを実装する。
AppController.m
- (IBAction)showFontPanel:(id)sender
{
[[NSFontPanel sharedFontPanel] makeKeyAndOrderFront:self];
[[NSFontManager sharedFontManager] setDelegate:self];
}



実行して「選択ボタン」を押す。


出た。

(当たり前だが)表示されているフォントとはまったく無関係。これをこれから関係づけていく。