モナーの *やさしい* Delphi質問スレ Ver3
■ このスレッドは過去ログ倉庫に格納されています
0001DELモナー
NGNGDELモナーがどんな厨房疑問でもやさしく答えます。
DELモナは時に私であり、時には別の人。
他のスレに書き込んで罵倒される前に、まずここで質問しよう。
∧ ∧
( ´∀`)( )
■前スレ
モナーの *やさしい* Delphi質問スレ
http://pc.2ch.net/test/read.cgi/tech/1003113413/
モナーの *やさしい* Delphi質問スレ Ver2
http://pc.2ch.net/test/read.cgi/tech/1011649179/
0002ヲッチャー
NGNGで、誰なんだ?全くその通りだとは思うが厳しいな<Hotkeyちゃんの掲示板
2ちゃんねらじゃないのか?
0003デフォルトの名無しさん
NGNG∧ ∧
( ´∀`)( )
を
∧ ∧
( ´∀`)
( )
に治してやれよ。モナー分割されたままだぞ。
0004デフォルトの名無しさん
NGNG( ´∀`)( )
0005デフォルトの名無しさん
NGNGC++相談室の v(^・^)v みたいなもんだ。気にするな。
0006デフォルトの名無しさん
NGNG( ´∀`)( )
∧ ∧ ∧ ∧
( ´∀`)( )
∧ ∧ ∧ ∧
( ´∀`)(´∀` ) <オマエDelモナー
∧
Delモナー
0007デフォルトの名無しさん
NGNG0008ヲッチャー
NGNG難しいところだ。彼のセンスは20年くらい前みたいだ。
もしかしてすごい年取ってるor子供なのか?
って、誰も知らんのか?
0009デフォルトの名無しさん
NGNGBorland 言語処理系プログラマー Watch スレ Part2
Delphi/CBuilder/JBuilder などの Borland 製品を使っている
プログラマーを観察するスレです。
http://pc.2ch.net/test/read.cgi/prog/1014384974/
があります。
0011デフォルトの名無しさん
NGNGpersonalでフリーソフトを作って配布してはいけないのでしょうか?
あと、データベース関連やWebアプリ関連以外でpersonalではできないことは
あるのでしょうか?
要するに、personal版で本格的なフリーソフトを作ってはいけない(作れない)のでしょうか?
0012デフォルトの名無しさん
NGNGそういう質問を匿名掲示板でされてもなぁ。返ってきた答えを信じるの?
D6 Personal を所有しているのなら、License.txt を読めばよい。
ここに最新のライセンスファイルがある。
http://www.borland.co.jp/delphi/del6/license.txt
001311
NGNGフリーソフトだったらいい、としか読めないのですが・・・
解釈が間違っていますか?(ネタや煽りではありません)
0014デフォルトの名無しさん
NGNGいいんでない?
で、本格的なフリーソフトってなによ?
001511
NGNGフリーソフトを作るならDelphiの方が作りやすいのは自明なので
Delphiでフリーソフトを作ろうと思っています。
しかし作っている内にpersonalの機能制限やライセンス制限の壁に
ぶち当たってしまうのでは、という不安があるわけです。
そもそもシェアにしようなどという考えはありません。
でも、「Delphiを使い倒したら、嫌でもprofessional版を買いたくなるよ」
という発言が過去にありましたね・・・
0016デフォルトの名無しさん
NGNG本格的でないフリーソフトとの違いを説明してくれ。
0017デフォルトの名無しさん
NGNG只で配るなら抵触しない。(CD-R代とか)実費程度でも受取ったらダメ。
0018デフォルトの名無しさん
NGNG配布HPでバナー広告を表示するのはどうだろう?
0019デフォルトの名無しさん
NGNG>いかなる報酬も受け取ってはなりません。
です。契約文章の最終判断は契約当事者間(この場合特定プログラマーとボーランド)との
話し合い、および食い違った場合には裁判所のみが介入できますから、第三者の私が答えを出すことは
不可能です。
「アプリケーションをダウンロードさせるページでバナー収入を得る」のは
グレーゾーンでしょう。まぁボーランドがいちいちチェックすることもないでしょうけど。
... バナーって儲かるの?ちょっと心が揺れたぞ。
0020デフォルトの名無しさん
NGNGユーザから報酬を受け取るわけではないので可なのでは?
あくまでWebページの一部を広告スペースとして提供することに対して
広告代理業者から対価を受け取っているに過ぎない・・・と言ってみるテスツ
0021デフォルトの名無しさん
NGNG自分もそう思う。ソフトの見返りとしての報酬ってわけじゃないし。
0022デフォルトの名無しさん
NGNG「雑誌に載せさせてくれ」って言ってきた出版社から謝礼もらうのは禁止か・・・な。
0023デフォルトの名無しさん
NGNGところで、personalでもWindoewsAPIに精通さえしていれば機能的には問題ないけど
コンポーネントを自作しようという場合にはVCLソースが無いと厳しいと思うよ
0024デフォルトの名無しさん
NGNGそんな礼儀を知る雑誌など日本には無い
0025デフォルトの名無しさん
NGNG機能的にはPersonalも十分だけど、バリバリ使うならやっぱりコードエクスプローラ欲しいもんね。
0026デフォルトの名無しさん
NGNGそれはどう見ても「配布の見返りとしての報酬」ではないかな?
相手はそういう名義で領収書送ってくるぞ。
0027デフォルトの名無しさん
NGNG0028名無しヘタぐらま ◆B18Bks.Y
NGNGフリーソフトの開発ツールとしてのpersonalとprofessionalの差は
・ライブラリのソースコードがない
・統合環境の一部の支援機能がない
くらいしかないように思います.
どちらもあると便利ですがなくても何とかなるものではないかと思います.
後者はDelphi3や4でついた機能ですし.
私は初代と2.0までは一番安いやつでしたが困らなかったです.
(あのころは一番安いやつにもデータベースがついてましたが全然使ってなかった)
むしろVBと違ってこれだけで何でもできるのが嬉しくて….
3からプロ版を使っていますが,
バージョンアップ時は一番安いやつからプロ版への移行がかなり安かったからという
消極的な理由でした.(会社のお金でしたし)
0029名無し募集中。。。
NGNGD1の時に悲しい思いをしたので、D2でプロ版に変えた。
0030デフォルトの名無しさん
NGNGTreeviewにImagelistでイメージ(アイコン)を割り当てて表示すると
ノードを選択したとき割り当てたイメージでなくImagelistの0番目
のイメージに変わってしまうのですが仕様なんですか?
0031デフォルトの名無しさん
NGNGイメージ用のインデックスって通常と選択時の二つがあって
選択時の値が0なんでは。
ツリービューの項目設定するフォームで指定できる。
0032デフォルトの名無しさん
NGNGこれもImagesと同じイメージリストにしておいたのですが・・・
0033デフォルトの名無しさん
NGNGすいません。解決しました(自己レス)
ノードの方にindexを指定し忘れていただけでした。
間抜けでゴメン
0034デフォルトの名無しさん
NGNG後でプロ版が必要になっても、べらぼうに高えわけでもないし。
0035デフォルトの名無しさん
NGNGDELPHI.NET とか…?
0036デフォルトの名無しさん
NGNGボタンをクリックすると「へこんだ状態」
再度ボタンをクリックすると「でっぱった状態」といった、
ボタンの形状でOn/Offを切り替えられるような
ボタンを使いたいのですが、Delphiではどうすればよいのでしょうか?
VBから移行してDelphiを使っているのですが、
こういったトグルボタンってVBだけなのでしょうか・・・
0037デフォルトの名無しさん
NGNGTToolBar を使ってみるとか
003842
NGNG色んな方法があります。
一つの方法は、パネルを貼り付けて
ダブルクリックして
procedure TForm1.Panel1Click(Sender: TObject);
begin
with Sender as TPanel do BevelOuter:=TBevelCut(ord(BevelOuter) xor 3);
end;
0039デフォルトの名無しさん
NGNGSpeedButtonとか
0040名無しさんです
NGNGどうやるのでしょうか?
0041デフォルトの名無しさん
NGNG死ぬほど検索して質問してるのだろうな?マジで。
0042デフォルトの名無しさん
NGNGIEの検索はモードレスだわさ。
だからShowModalせずにShowすれ。
0043デフォルトの名無しさん
NGNGhttp://www.google.co.jp/search?q=%82%84%82%85%82%8C%82%90%82%88%82%89%81@%83%82%81%5B%83_%83%8B%81@%95%5C%8E%A6&hl=ja&btnG=Google+%8C%9F%8D%F5&lr=
好きなだけ死ぬまで検索してこい。
004543
NGNG004640
NGNG例えばVBだと 「show 0」とすると呼び出し側を操作できるように
なるのですが。
0047デフォルトの名無しさん
NGNG>ボタンをクリックすると「へこんだ状態」
>再度ボタンをクリックすると「でっぱった状態」といった、
これは、本来、チェックボックスの機能です。「へこんだ状態」が Checked
:= true; に相当しています。見かけをお望みのようにするには、スタイルに
BS_PUSHLIKE を加えます。たとえば、Form1 に CheckBox1 を置いて
procedure TForm1.FormCreate(Sender: TObject);
var
ST:LongInt;
begin
ST := GetWindowLong(CheckBox1.Handle,GWL_STYLE);
ST := ST or BS_PUSHLIKE;
SetWindowLong(CheckBox1.Handle,GWL_STYLE,ST);
end;
とすると外観がプッシュボタンのチェックボックスになります。
TCheckBox を継承して、property Pushlike:Boolean のような
プロパティーを持つようなコンポーネントを作るのは簡単です。
0048デフォルトの名無しさん
NGNGVBやってろ。
0049デフォルトの名無しさん
NGNG3秒後にCloseしてメニュー画面を表示させたいのですが、
タイトルフォームがメインフォームに設定されているため、
タイトルのCloseの段階でアプリケーションが終了してしまいます。
1.タイトル表示(メインフォームに設定されている)
2.タイマーイベントでClose
3.メニューを表示
2.3を入れ替えてみましたが同様でした。
こういった場合は、どのようにすれよいのでしょうか?
005040
NGNGDelではできないと言うことですか?
Del製のエディタなどの検索フォームは一回一回閉じるのが
多かったのでもしかして特殊なことをしないとできないのかと
なんとなく思いました。
ただ単にDelではこのやり方が流行ってるの?
0051デフォルトの名無しさん
NGNG>showにすると親ウインドウにフォーカスが移せないですが…。
そんなことはありません。たとえば Form1 から Form2 を Show するとき
uses
Unit2;
procedure TForm1.Button1Click(Sender: TObject);
begin
Form2.Show;
SetFocus;
end;
とします。検索のダイアログのようにしたければ、 Form2 の BorderStyle を
bsDialog に設定し、CreateParams() を以下のように override します。
type
TForm2 = class(TForm)
private
{ Private 宣言 }
public
procedure CreateParams(var Params: TCreateParams); override;
end;
var
Form2: TForm2;
implementation
{$R *.DFM}
uses
Unit1;
procedure TForm2.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
Params.WndParent := Form1.Handle;
end;
0053デフォルトの名無しさん
NGNG>1.タイトル表示(メインフォームに設定されている)
>2.タイマーイベントでClose
>3.メニューを表示
意味が分かるのは2だけです。
1はひょっとしてスプラッシュのことかな?
3は意味がわかりません。メニュー単独で表示、ということ?
0054デフォルトの名無しさん
NGNG表示させて起動したら消すってヤツをしたいんじゃないの?
よーするにスプラッシュでしょ?違うの?
だったら検索すれ。「スプラッシュ」で。
0055デフォルトの名無しさん
NGNG>タイトルフォームがメインフォームに設定されているため、
Delphi では、プロジェクトファイルで最初につくられるフォームが
Application.MainForm になります。MainForm が閉じるとアプリケーションが
終了してしまいます。スプラッシュウィンドウは、MainForm 以外の Form で
作るべきです。
005640
NGNGおかげさまでできました。ありがとうございます。
ただ後半の部分は何をやっているかサッパリなので
調べてみます。
005751
NGNG>ただ後半の部分は何をやっているかサッパリなので
Delphi では、デフォルトですべての Form は、Application ウィンドウに
所有されています。Form2 をつねに Form1 より手前に表示させるために、
CreateParams() を override して、Form2 のオーナーを Form1 にしている
わけです。
0058デフォルトの名無しさん
NGNGForm2.FormStyle = fsStayOnTop
>>スプラッシュ
frmTitle, frmMain の2つがあったとしよう。
どっちがどっちかは名前から連想。
プロジェクト→オプション→フォームで、
frmTitle を「自動生成」から「選択可能」へ移動する。
つぎに、表示→ユニットを表示→Project1.dpr (デフォルトでの名前)に
uses
ShellApi;
var
Start:Integer;
try
{ 開始時刻を記録 }
Start := GetTickCount;
{ 表示 }
frmTitle.Create( Application );
frmTitle.Show;
{ 時間のかかる処理 }
Application.CreateForm( TfrmMain, frmMain);
{ 最低3秒たつまで待つ }
while GetTickCount-Start < 3000 do;
{ 後始末 }
frmTitle.Close;
frmTitle.Free;
{ 本体を実行 }
Application.Run;
0059デフォルトの名無しさん
NGNGtry→begin
006136
NGNGありがとうございます、両方試して>>38さんの方法を使うことにしました。
>>39
SpeedButtonをどのようにすれば実現できるかわからなかったので、
試すことができませんでした、すいません
みなさん、ありがとうございました。
0062デフォルトの名無しさん
NGNG0063デフォルトの名無しさん
NGNG「なし」になってしまいます。
バックスペースはショートカットとして入力できないのでしょうか?
0064デフォルトの名無しさん
NGNG遅レスだが、CLXアプリだとそのものずばりのTButton.ToggleButtonがある。
TSpeedButtonだとGroupIndexを0以外にしてAllowAllUpをtrueにすれば良し。
0065ねこま
NGNG0066デフォルトの名無しさん
NGNGユーザがどうやって入力するの?
0067デフォルトの名無しやん
NGNG途中から分からなくなってしまいました。
どこが分からないかと言いますとObjctPascal入門というとこです。
16進数やら文字型等です。まだ44ページ目なのですが・・・。
どうゆう風に学んでいけばいいのでしょうか?
0068デフォルトの名無しさん
NGNG気にしないでどんどん前進する。最後まで行ってから、
また戻ってくる。これを繰り返す。あとは、とりあえず、
なにを作りたいか、目的を定めて、それから、具体的な
問題を設定し、解決してゆくにはどうしたらよいかを考
える。
0069デフォルトの名無しやん
NGNGどうも。しかし何も分からないんですよ。
例えばいくつか命令が分かればそれを組み合わせていろいろ作れると
思うのですが、ほとんど分からない状態でして・・・。
今分かるのはShowmessage('Hello The World');
くらいです(藁
0070デフォルトの名無しさん
NGNG0071デフォルトの名無しさん
NGNGSay(Integer)とSay(String)のオーバーロードで。
0072デフォルトの名無しさん
NGNGshowmessage('are');
showmessage('you?');
0073デフォルトの名無しさん
NGNGってなんですか?
前から気になってました・・・
0074デフォルトの名無しさん
NGNG0075デフォルトの名無しさん
NGNG007667
NGNG007768
NGNGじゃ、オレが具体的な課題を出す。
1.Form1 に3コのTEdit、つまり Edit1、Edit2、Edit3、と Button1 を配置
2.Edit1 と Edit2 には整数の文字列を入力するものとする
3.Button1 を押すと Edit1 と Edit2 の数値の和を求めて、Edit3 に表示
ヒント
・TEdit クラスの Text プロパティーについてヘルプを調べる
・IntToStr( ) 関数 と StrToInt( ) 関数について調べる
以上の課題を解いて、Button1Click ハンドラをここに示せ
0078HotKey!
NGNG007967
NGNG本当に情けないです。
008067
NGNG0081Button1Click ハンドラ
NGNG20 goto 10
008268
NGNGうん、そうか、ではここを出発点としよう。
1.までできたなら Button1 をダブルクリックする。そうすると
コードエディタに Button1Click ハンドラが自動的に生成する。
そうしたら、
procedure TForm1.Button1Click(Sender: TObject);
begin
Edit3.Text := IntToStr(StrToInt(Edit1.Text)+100);
end;
と書いたら、F9 を押して実行する。
そして、実行時に Edit1 に、たとえば 333 と入力して、Button1 を
押すと Edit3 に 433 と表示されるのを確認。
とりあえず、ここまで。OK?
0084デフォルトの名無しさん
NGNG0086デフォルトの名無しさん
NGNG2.「教えてやるから」という上からの態度に67がカチン!と来た。
3.分からんし、面倒だ。後は見てよう。
どれかであろう。2じゃねーのか(藁
0087デフォルトの名無しさん
NGNG行ってないんじゃ?
うちのDelphi5の本だと
型の説明→条件文など→コンポーネントの使い方
ってなってますよ。
008967
NGNGbegin
Edit3.Text:=IntToStr(StrToInt(Edit1.Text)+StrToInt(Edit2.Text))
end;
009167
NGNG0092デフォルトの名無しさん
NGNGバカじゃねーの
0093デフォルトの名無しさん
NGNG今までは、毎回非表示のComboBoxを実行時に乗せてやる
よく使われる方法でやってましたが、最近Grid使う事が多くて
毎回だと無駄な気がしてきまして挑戦中です。
そんなこんなで、
StringGridから派生させた自作のGridコンポを作成して、
カラム毎に属性をTInplaceEditListで保存してやって、
それを使ってコンボのカラムなのかを判断させようと考え
ています、でも、そもそも属性の設定とか出来ても、
ComboBox形式にするってのが雲をつかむような感じで
困ってます。
0094デフォルトの名無しさん
NGNGなんだそのコピペまるだしなのは?
0095デフォルトの名無しさん
NGNG0096デフォルトの名無しさん
NGNG0097デフォルトの名無しさん
NGNG0099デフォルトの名無しさん
NGNGakLeft = True
akRight = True として、
フォームのリサイズにあわせてGridの幅きさを変わる様にしているのですが、
Gridの各項目の列幅はリサイズされません。
Gridの列幅リサイズできないものなのでしょうか?
0100デフォルトの名無しさん
NGNGどうすればいいですか?Delphi6使ってます
0101質問!
NGNG色々聞きたいこともあるのですが・・・まず。
えっと、「Delphi」
読み方はデルファイですか?デルフィですか?
あんまりな質問ですがなにとぞよろしくお願いします。
■ このスレッドは過去ログ倉庫に格納されています