大家帮帮我好吗???(200分)

  • 主题发起人 主题发起人 吴小丽
  • 开始时间 开始时间

吴小丽

Unregistered / Unconfirmed
GUEST, unregistred user!
数据库问题
1.如何通过程序合并MySql数据库?
2.如何通过程序备份、还原Mysql数据库(注:是远程备份、还原)?
3.如何通过程序点击DBGrid上的标题就可以对数据进行排序?就象Rx里面哪个数据库例子(注:不要用控件)

浏览器问题
4.我在程序中加了下面的代码,为什么Textarea不能换行?只能实现粘贴和复制。
initialization
OleInitialize(nil);
finalization
OleUninitialize;
5.在使用资源文件时,为什么图片不能正常显示,我觉得是路径引起的问题,想试着修改Html里的图片路径,
但还是不行!应这样解决呢?
6.如何用WebBrowser显示Html字符串?(以找到相关方法,不知道该如何使用)
方法1
var
v: Variant;
HTMLDocument: IHTMLDocument2;
begin
HTMLDocument := WebB.Document as IHTMLDocument2;
if (assigned(HtmlDocument)) then begin
v := VarArrayCreate([0, 0], varVariant);
v[0] := str; //that is to be shown
HTMLDocument.Write(PSafeArray(TVarData(v).VArray));
HTMLDocument.Close;
方法2
var
AStream: TStream;
begin
AStream := TStringStream.Create(Content);
(Browser.Document as
IPersistStreamInit).Load(TStreamadapter.Create(AStream));
end;
-----------------------------------------
请尽量贴出较完整而又调试通过的代码,我的饭碗就靠大家了~谢谢!!!
 
对于问题1、2如果是SQL Server我知道怎么做,但是mysql我没做过。不知道我的那种方法是否
行得通。
对于问题3,可以用下面方法:
在DBGrid事件OnTitleClick里写:(假如说你的DBGrid 是通过Query1来取数据的)
with Query1 do
begin
Close;
Sql.Clear;
Sql.Add('select * from tablename order by ' + [red]Colunm.FieldName[/red]);
Open;
end;
 
在DBGrid事件OnTitleClick里写:(假如说你的DBGrid 是通过Query1来取数据的)
with Query1 do
begin
Close;
Sql.Clear;
Sql.Add('select * from tablename order by ' + [red]Colunm.FieldName[/red]);
Open;
end;
如果你是用CLIENTDATESET的话,
 clientdataset.indexname := Colunm.FieldName;
 
batchmove 组件,copy Append 数据库
 
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, OleCtrls, SHDocVw, MSHTML, activex;

type
TForm1 = class(TForm)
WebBrowser1: TWebBrowser;
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}
{$R aa.RES}

procedure TForm1.Button1Click(Sender: TObject);
var
v: Variant;
slTemp: TStrings;
HTMLDocument: IHTMLDocument2;
HtmlStream : TResourceStream;
begin
slTemp := TStringList.Create;

HtmlStream := TResourceStream.Create(hinstance, 'aahtml', pchar('htmlfile'));
slTemp.LoadFromStream(HtmlStream);

WebBrowser1.;
HTMLDocument := WebBrowser1.Document AS IHTMLDocument2;
if (assigned(HtmlDocument)) then
begin
v := VarArrayCreate([0, 0], varVariant);
v[0] := slTemp.Text;

HTMLDocument.Write(PSafeArray(TVarData(V).VOleStr));
HTMLDocument.Close;
end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
WebBrowser1.Navigate(extractfilepath(application.ExeName) + 'a1.HTM');
end;

end.


还有一点小问题,
你只点第一个按扭,和先点第二个按扭,再点第一个按扭,看有什么不同。
:-)
看来,必需先在WebBrowser1中显示点东西,才可这样用,
有空我再想想如何解决这个问题。
先这样将就着用着了。

看来必需得先有东西显示才可
你也只有偷机取消,让它显示一个空的
或是默认的东西

 
后退
顶部