全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1610
推到 Plurk!
推到 Facebook!

請問...怎麼將東西連上網...

答題得分者是:hagar
bluesup0505
一般會員


發表:4
回覆:8
積分:2
註冊:2003-07-25

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-07-25 16:14:30 IP:210.70.xxx.xxx 未訂閱
請問... 怎麼將在DBGIRD的東西連上網呢~ 有網址在DBGIRD裡面~ 但是我想將它執行時~ 按一下網址~ 就可以連上去了~^^ < >< >
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-07-25 16:49:47 IP:202.39.xxx.xxx 未訂閱
uses ShellApi;
  
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
  if Column.Field.Name = 'address' then
    ShellExecute(0, 'open', PChar(Column.Field.AsString), nil, nil, SW_SHOW);
end;
--- --<-<-<@
bluesup0505
一般會員


發表:4
回覆:8
積分:2
註冊:2003-07-25

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-07-30 17:03:05 IP:210.70.xxx.xxx 未訂閱
程式好像有錯~ 不能用耶~ 我是將dbgird的東西連資料庫~ 試了又試還是不行~ 顯示在dbgird裡面的東西~ 有很多行~ 如果我要讓裡面的東西按到網址才連~ 有辦法嗎~ >"<
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-07-30 23:25:59 IP:202.39.xxx.xxx 未訂閱
1.首先在 TDBGrid 元件點兩下, 出現 Columns Editor 後   按右鍵, 選 Add All Fields 2.OnCellClick 事件程式改寫如下試試:
uses ShellApi;
  
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
  if Column.Field.FieldName = 'address' then
    ShellExecute(0, 'open', PChar(Column.Field.AsString), nil, nil, SW_SHOW);
end;
--- --<-<-<@
banson1716
高階會員


發表:55
回覆:182
積分:167
註冊:2002-04-14

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-07-31 14:50:07 IP:218.175.xxx.xxx 未訂閱
Uses Shellapi; MOUSE快點二下網址欄位中資料即可連結網址 procedure TAddressURLForm.DBGrid1DblClick(Sender: TObject); begin ShellExecute (Handle, 'open', PChar (ADOQuery1.FieldByName('網址').asstring), '', '', sw_ShowNormal); end;
bluesup0505
一般會員


發表:4
回覆:8
積分:2
註冊:2003-07-25

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-08-05 09:38:32 IP:210.70.xxx.xxx 未訂閱
to banson1716~ 請問~ 不太懂你寫的內容耶~ 是在dbgird下貼上你寫的程式~ 還是??? 發表人 - bluesup0505 於 2003/08/05 09:40:34
bluesup0505
一般會員


發表:4
回覆:8
積分:2
註冊:2003-07-25

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-08-05 15:29:21 IP:210.70.xxx.xxx 未訂閱
to版主~ 在程式執行時~ uses是否應更改~ 因為執行時~ 有出錯~
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-08-05 18:06:50 IP:202.39.xxx.xxx 未訂閱
這位同學, 您每次都說出錯 但也不把錯誤內容描述出來 這樣大家怎麼會知道到底出了什麼錯呢? --- --<-<-<@
bluesup0505
一般會員


發表:4
回覆:8
積分:2
註冊:2003-07-25

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-08-06 15:51:22 IP:210.70.xxx.xxx 未訂閱
不好意思喔~ 我是初學者~ 所以很多地方不懂~ 我應該把uses Shellapi;放在那?那shellapi是啥意思呢~ 我放在任何地方都出錯~ PChar(Column.Field.AsString), nil, nil, SW_SHOW這行又是啥意思呢~ 可不可以解釋給我聽~ 我應該有要更改內容吧~..... 發表人 - bluesup0505 於 2003/08/06 16:05:40
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#10 引用回覆 回覆 發表時間:2003-08-06 18:39:49 IP:202.39.xxx.xxx 未訂閱
1.找看程式單元內最前面幾行有個 uses 的地方, 接著放在最後面就好了 2.ShellApi 是個單元(unit)的名稱 3.PChar(Column.Field.AsString), nil, nil, SW_SHOW 這些是指 ShellExecute 這個 API 所使用的參數 4.您要更改的是 Column.Field.FieldName = 'address' 中的 address 值 看您要 click 的那個欄位的名稱為何 5.買本書來 K 吧! --- --<-<-<@
bluesup0505
一般會員


發表:4
回覆:8
積分:2
註冊:2003-07-25

發送簡訊給我
#11 引用回覆 回覆 發表時間:2003-08-07 16:42:57 IP:210.70.xxx.xxx 未訂閱
那Uses Shellapi;的後面是接著放剩下的程式嗎~ 還是在OnCellClick下~ 放上Shellapi後,執行時出現錯誤~ 這是原本就有的程式了 但是在windows就出錯了~ 我想我會不會把剩下的程式放錯地方了~ 謝謝你喔~ 這麼有耐心回答我的問題~ ^^
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#12 引用回覆 回覆 發表時間:2003-08-07 20:43:43 IP:202.39.xxx.xxx 未訂閱
unit Unit1;    interface    uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ShellApi;    type
  TForm1 = class(TForm)
    DBGrid1: TDBGrid;
    procedure DBGrid1CellClick(Column: TColumn);
  private
    { Private declarations }
  public
    { Public declarations }
  end;    var
  Form1: TForm1;    implementation    {$R *.DFM}

procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
  if Column.Field.FieldName = 'address' then
    ShellExecute(0, 'open', PChar(Column.Field.AsString), nil, nil, SW_SHOW);
end;

end.
--- --<-<-<@
bluesup0505
一般會員


發表:4
回覆:8
積分:2
註冊:2003-07-25

發送簡訊給我
#13 引用回覆 回覆 發表時間:2003-08-15 11:53:52 IP:210.70.xxx.xxx 未訂閱
謝謝你喔~已經可以連上網了~^^ 不過~出現一個問題~ 因為dbgird裡面有很多的網址~ 按了一個進去~在按另一個會覆蓋過去~~ 這樣就不能同時瀏覽了~ 有什麼方法嗎~
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#14 引用回覆 回覆 發表時間:2003-08-15 17:38:12 IP:202.39.xxx.xxx 未訂閱
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
  if Column.Field.FieldName = 'address' then
    Shellexecute(Handle, 'open', 'explorer.exe', PChar(Column.Field.AsString), nil, SW_SHOW);
end;
--- --<-<-<@
qoo1234
版主


發表:256
回覆:1167
積分:659
註冊:2003-02-24

發送簡訊給我
#15 引用回覆 回覆 發表時間:2003-08-16 23:32:31 IP:61.217.xxx.xxx 未訂閱
hagar..的方法,適合用於「IE瀏覽器」。    網海無涯,學無止境! 發表人 - qoo1234 於 2003/08/16 23:35:40
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#16 引用回覆 回覆 發表時間:2003-08-17 07:39:51 IP:202.39.xxx.xxx 未訂閱
參考: http://www.experts-exchange.com/Programming/Programming_Languages/Delphi/Q_12018259.html    --- 歡迎光臨 KTop 研究院--<-<-<@
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#17 引用回覆 回覆 發表時間:2003-08-17 10:56:02 IP:202.39.xxx.xxx 未訂閱
開 ie 新視窗另一種方法:
uses UrlMon;    procedure TForm1.btnGoogleClick(Sender: TObject);
var sURL: string;
begin
  sURL := 'http://www.google.com';
  HlinkNavigateString(nil, PWideChar(WideString(sURL)));
end;
--- 歡迎光臨 KTop 研究院--<-<-<@
系統時間:2024-05-06 0:59:26
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!