数学建模社区-数学中国

标题: 小菜菜的问题专贴,欢迎大侠们参观指导:) [打印本页]

作者: 小菜菜同学    时间: 2005-5-6 14:06
标题: 小菜菜的问题专贴,欢迎大侠们参观指导:)
<>为了不使高技术含量的帖子被我的基础问题帖,给压沉了,[em01]。特开此帖,我以后就在这里提出问题了,望大侠多多指导,新手咱们也可以交流交流。</P>
$ `+ {7 V: f& Q<>我有几个问题查了半天没查到,[em06]想请教大家:</P>
  [. W7 N2 X! i* R<>1、Form1-&gt;Update()是什么意思?和Update()有什么区别?</P>' G4 B& u( _: w8 R4 n
<>2、BringToFront()是什么意思?</P>
4 P& n, `3 b2 s# ^<>3、Form1-&gt;ImeMode=imClose是什么意思?</P>
作者: ilikenba    时间: 2005-5-6 15:52
<>1.这两个函数都是强迫重画的作用,因为系统会每隔一段时间自动重画的,这是在自动重画之前的强迫重画!只是前一个就是重画窗体Form1,后面是一个API,重画当前的窗体框架!</P><>2.这个方法是将一个控件提到前台显示,有的时候当两个控件重合的时候,后面的控件会被前面的挡住,这个方法可以将后面的控件提到前台!</P><>3.这个方面是将窗体Form1的输入法响应关闭,通常用来输入数字的时候!</P>
作者: 小菜菜同学    时间: 2005-5-6 16:49
<>2、3都明白了,谢谢ilikenba.</P><>1、我 写 </P><>if(a==1){Label3-&gt;Caption="wrong";</P><>  waiting(2);}  Label3不显示wrong直接进行下一步运算,但是我在waiting(2);}   前若加上Form1-&gt;Update(),就可以显示wrong了。难道waiting(2);阻止系统重画???</P>
作者: ilikenba    时间: 2005-5-6 19:59
我估计不是waiting(2);阻止系统重画,而是因为你后面的语句太占用CPU了,所以造成系统的重画不及时,但是也有可能是waiting函数有阻止系统重画的作用!前若加上Form1-&gt;Update(),就是先让它重画再去执行后面的语句,这样就没有上面的问题了!
作者: 小菜菜同学    时间: 2005-5-6 20:29
<>我的后面语句没多少,估计还是waiting函数的问题</P><>我还有个问题,我想要使两个程序交替着显示,是用两个窗体还是用什么?若是两个窗体交替着显示,看什么书呢?</P>
作者: 小菜菜同学    时间: 2005-5-6 21:34
<>还有如果要设计一个试卷,有很多选择题,如何实现翻页的效果呢?
7 P4 J, ~- L  @" O5 K 1、是用很多控件来回隐藏。
' X' u- U5 n4 Z! |4 i5 R) V 2、还是几个控件来回换内容,: N! H6 `! }6 E! {, [9 ]( }
3、还是用多个窗体(这个我还不会呢)+ f/ x: p' z  b1 D( X8 N/ b
4、用数据库。但数据库能连同程序装到一个exe中吗?</P>
作者: 小菜菜同学    时间: 2005-5-6 21:37
还有一个问题是如果想将5副图放入一个EXE中,除了设5个图象控件,分别装入。还有别的方法吗?
作者: ilikenba    时间: 2005-5-7 01:54
<>5个图最好用ImageList控件!</P>
作者: 小菜菜同学    时间: 2005-5-8 14:55
<>不好意思,有产生了不少问题。[em04],如下:</P><>1、我打开新建——Business--Database Form Wizard,就出现下面信息:</P><>An error occurred while attempting to initialize the Borland Database Engine (error $2109)" F1 _0 Z8 e5 {) k4 E* }5 L4 `
怎么修补呢?</P><>2、' b; }5 s, V: q, H
在我的电脑上,用ImageList装图片,只要预装的尺寸大一点(Width&gt;=300,height&gt;=200)便装不进去。出现以下错误信息:: D' O; K. f7 e# t3 C
[Linker Fatal Error] RLINK32: Error opening file "D:\程序\UNIT1.DFM"
3 z; Q/ @& \7 g' t+ u" I* M! i' {0 I6 m是这个控件就是这样的,还是我的BCB有问题?我还想让它装300*500呢?</P><>3、用一个ImageList(装6个图)与用6个Image控件相比,除了方便控制、方便设置外,在软件的大小、和软件运行速度方面有区别吗?</P><>4、用TImage *img[36];且都赋给img图,在软件的大小、和软件运行速度方面,就是相当于使用了36个Image控件吗?</P>
作者: 小菜菜同学    时间: 2005-5-8 16:49
5、怎样将窗体的最上的的状态栏(就是右上角的最小化、最大化、关闭)去掉呢?我想用整个窗体显示一个图片几秒钟,但有那么个框太不和谐了。
7 ]4 H- |2 H; Y' p- I怎么作一个心形的窗体呢?
作者: 小菜菜同学    时间: 2005-5-20 09:36
<>不好意思,再加个6吧!</P>
- ^* T4 u6 E1 x0 @* D- x2 n( b<>6、几个窗体互相显示,互相传递参数,该怎么编呢?如果一句两句说不清楚,我该看什么书呢?我下了5,6本咱们论坛关于BCB的书,结果都没有详细介绍窗体间转换的内容。我现在就会制作一个封面。</P>9 L, h; {; O2 U7 M5 ^5 U
<>就是用Form2-&gt;ShowModal();转到Form2中,显示Form2里的图片一会再回来。但是,如果不止是一个图片,我还想让它完成一些运算,再转到Form1中,用这种方法好象不行。</P>[em06]
作者: 小菜菜同学    时间: 2005-5-20 17:53
<>好几个窗体怎么定义外部变量呢?我在Form1申明的int tt;</P>
  z7 H5 Y9 w& n" t: l- d<>tt在Form2里不能用;</P>
# `6 q3 k. W- j' Y2 L5 x. f<>而在Unit1.h在公共区里加上int tt;在Form2里就可以用Form1-&gt;tt了</P>
作者: ilikenba    时间: 2005-5-20 23:05
第一种需要定义在所有函数的外面,这样定义的变量是外部变量,可以被其他的窗体调用,第二种是采用了通过类的实例来访问类的公有变量的方法,在BCB中由语言自动定义了窗体的类实例的外部指针,Form1就是这样的指针!
作者: 小菜菜同学    时间: 2005-5-21 20:42
<>Form1.h是个类,Form2.h是个类,</P>
4 \* w8 M  u3 g' l: v) l( C# j<>在Form1中,写:</P>
: L) o1 D8 P6 s9 |$ V<>#include "Form1.h"</P>
, Z9 X5 ?. A2 _/ Y7 _1 Y  Z<>#include "Form2.h"</P>1 K9 _7 A  v: o# m
<>后,那的外部变量,怎么不是Form1的外部变量呢?</P>
4 L. T  _6 F2 j# v# e0 B/ w<>#include不相当于复制插入而成一个文件吗?</P>* F1 q9 `2 A! d% _- y
<>Form1和Form2是两个文件吗?</P>
作者: ilikenba    时间: 2005-5-21 22:17
<>外部变量和包含类文件无关,外部变量是可以被工程中的所有文件调用的,用include包含以后如果你使用了release发布的话那么就包含了那些文件,如果仅仅在debug状态是不包含,这你可以从exe文件的大小看出来!</P>
作者: 小菜菜同学    时间: 2005-6-10 15:00
请问大侠,在BCB中我能不能把一个只有一个窗体的工程文件,转变成为另一个文件的Form2呀?我想有3个窗体,每个窗体的代码都编完了。但是,放在3个不同的文件里。我想把他们合成一个文件。但是有两个窗体加的组件特别多,复制太困难。[em04]
作者: ilikenba    时间: 2005-6-10 20:07
<>你把那个窗体对应的.cpp,.dfm,.h三个文件拷贝到新的工程的目录,然后加入工程中,就可以了!</P>
作者: 小菜菜同学    时间: 2005-6-11 10:10
<>呵呵,谢谢<STRONG><FONT face=Verdana color=#61b713>ilikenba</FONT></STRONG>大哥,我好象成功了[em01]。我将Unit2.cpp(我将原来3个文件都改名Unit2)加入工程的时候,BCB提示说已经有一个Form1了。然后,我把窗体设置中Form1改为Form2,就行了,不过还得在CPP,H中改几个地方(把1改2)。然后就可以运行了。我这么做对吗?</P>
" R" X3 |. ]% d1 _6 s  c<>不过,运行时,我设的是点一个按钮来执行: Form2-&gt;ShowModal(); 但是,我一点这个按钮,怎么BCB提示 Access violation at address 00401F13 in module''PROJECT1.EXE'' .Read of address FFFFFFFF.</P>
' B: u$ j3 Y: y' U5 ^8 @; ]$ Q3 T: j<>存取违反了模块''PROJECT1.EXE''的地址00401F13?什么意思呢?</P>[em11]
作者: 小菜菜同学    时间: 2005-7-15 12:37
<>又来麻烦大侠了:</P>
. y6 J* ~4 i  O4 u" g# g<>1、有的书上说,可以从DB DESKTOP,直接拖放一个字段,使得窗体上自动生成一个TDBEdit和Label,可是我怎么拖不上去呀?<BR>2、DB DESKTOP怎么删除行呀?字段能删除,但好象多出一行就删不下去了。</P>
9 {; }! ?- a4 O( k7 @<>3、能设置一下BCB浏览的开始目录吗?由于BCB默认的存储目录就在BIN下,要是都存在那感觉太混乱,我一般都是存在别的目录下,但是这就要我每次打开,每次想看看其他的自己的源码,总要点击6、7次选择目录。</P>
作者: ilikenba    时间: 2005-7-15 17:18
<>DB Desktop是BCB自带的数据库编辑工具,我没有怎么用过,基本印象是比较简陋,我想用它来管理像paradox这样的教学用数据库可能会方便一些。对于你的问题我想直接拖放字段就可以在应用的窗体上出现控件似乎超过了它应有的功能,删除行我想点击行的右键菜单里面应该有的,当然我推荐你还是参考一下它的帮助!</P>' J- z# A! A' h0 b: d  N
<>对于修改默认的目录,你可以close all所有工程,在project-&gt;options-&gt;Directions/contionals中修改输出路径!</P>
作者: 小菜菜同学    时间: 2005-7-17 17:47
<>谢谢<FONT face=Verdana color=#61b713><STRONG>ilikenba</STRONG><FONT color=#000000>大侠的多次解答,[em17][em17][em17][em27][em31]</FONT></FONT></P>8 t: x8 N3 |. K! O5 f
<>1、fopen()这类的文本文件命令和FileOpen()这类的文本文件命令有什么区别呢?</P>) k+ U, d' m6 ^2 H. L1 x+ X) \
<>2、sleep(sec)和下列函数相比,作用一样但是不是有什么不同。我看见一本其他部分说的比较明白的书用了后者,用之前还要系统重画Form1-&gt;Update();,是不是sleep(sec)有什么缺点,要不也太多此一举了吧!</P>  M  ~+ r* X; Q1 ?1 h
<>void waiting(int sec)<BR>{<BR> int x,y;<BR> struct time t;<BR> gettime(&amp;t);<BR> x=t.ti_sec;<BR> y=x;<BR> while(abs(y-x)&lt;=sec)<BR> {<BR>  gettime(&amp;t);<BR>  y=t.ti_sec;<BR> }<BR>}</P>
作者: 小菜菜同学    时间: 2005-7-22 17:08
<>TImage *img[65]; </P>
. [) I  V5 y! l9 O1 z<>TJPEGImage *tmpimg=new TJPEGImage ;<BR>   tmpimg-&gt;Assign(Image0-&gticture);<BR>  img-&gt;Canvas-&gt;CopyRect(rect1,tmpimg-&gt;??,rect2);</P>
5 s% Q( }( Z$ W6 r; J: G! e<>请问,能不能在上述??处加一个属性,使得 将Image0中的JPG格式的图之中的一部分赋给img[I]?</P>
作者: 小菜菜同学    时间: 2005-7-25 16:13
<>请问大侠:</P>% b( \( R# C' g" v( |
<>我的程序要读一个TXT,来一段一段的反映到屏幕上。但是,不想让用户直接在记事本中就能看到TXT的全部内容。我该怎么做呢?</P>/ M1 D$ E" h! Z) G# g% T% Y, r
<>我看到有人是用没有扩展名的方式顺式保存。但感觉不太好。</P>
2 |: j( J& v2 W, O<>有更好的办法吗?</P>2 R) c8 y6 f6 K1 i/ w- F7 {4 p0 L
[此贴子已经被作者于2005-7-25 16:20:55编辑过]

作者: ilikenba    时间: 2005-7-25 21:08
你不想让别人看到txt的内容可以加密呀!就是去掉扩展名的文本文件依然可以用记事本打开呀!
作者: ilikenba    时间: 2005-7-25 21:16
<DIV class=quote><B>以下是引用<I>小菜菜同学</I>在2005-7-22 17:08:43的发言:</B><BR>* I) ~  F  ]  \+ J* m8 |
<>TImage *img[65]; </P>
( B5 h, a) ]  J  L1 T<>TJPEGImage *tmpimg=new TJPEGImage ;<BR>   tmpimg-&gt;Assign(Image0-&gticture);<BR>  img-&gt;Canvas-&gt;CopyRect(rect1,tmpimg-&gt;??,rect2);</P>
: f2 g! u8 `% @, C% p. r<>请问,能不能在上述??处加一个属性,使得 将Image0中的JPG格式的图之中的一部分赋给img[I]?</P><BR></DIV>7 i: Q2 B/ h8 d' @6 A3 D; W$ |; M
<>直接用canvas属性就可以呀!</P>
作者: ilikenba    时间: 2005-7-25 21:20
<DIV class=quote><B>以下是引用<I>小菜菜同学</I>在2005-7-17 17:47:23的发言:</B><BR>; T( u, L" T, V* C' g
<>谢谢<FONT face=Verdana color=#61b713><STRONG>ilikenba</STRONG><FONT color=#000000>大侠的多次解答,[em17][em17][em17][em27][em31]</FONT></FONT></P>& ]% U. ?+ Y: F$ \" L; {& {
<>1、fopen()这类的文本文件命令和FileOpen()这类的文本文件命令有什么区别呢?</P>  C: }3 ~7 ]8 @) G
<>2、sleep(sec)和下列函数相比,作用一样但是不是有什么不同。我看见一本其他部分说的比较明白的书用了后者,用之前还要系统重画Form1-&gt;Update();,是不是sleep(sec)有什么缺点,要不也太多此一举了吧!</P>( h5 D# a7 ^. \- o6 f# V
<>void waiting(int sec)<BR>{<BR>int x,y;<BR>struct time t;<BR>gettime(&amp;t);<BR>x=t.ti_sec;<BR>y=x;<BR>while(abs(y-x)&lt;=sec)<BR>{<BR>  gettime(&amp;t);<BR>  y=t.ti_sec;<BR>}<BR>}</P></DIV>
4 k/ Y7 K- C0 c6 B! ~1 J9 W" Q<>这两个问题,你最好看看帮助,写得很清楚呀!看完了咱们再交流!很容易解决的!</P>
作者: 小菜菜同学    时间: 2005-7-26 09:08
<DIV class=quote><B>以下是引用<I>ilikenba</I>在2005-7-25 21:08:09的发言:</B><br>你不想让别人看到txt的内容可以加密呀!就是去掉扩展名的文本文件依然可以用记事本打开呀!</DIV>% e& l) E$ u' }" g! i: n
<><br>谢谢大侠的解答,是呀还是可以打开的。只是能骗骗比我还菜的人。呵呵。</P>
$ Y) U  a+ h" ]) G0 G( H<>但是怎么加密呀?加密后读它的程序是不是也得改呀?图片也能加密吗?把文本放在资源中,能读取吗?是加密的吗?[em29]</P>
1 O" P6 J7 D. L5 Z; W: s1 C  _4 J
[此贴子已经被作者于2005-7-26 9:21:36编辑过]

作者: ilikenba    时间: 2005-7-26 12:49
<>对于一般文件(当然包括图片文件了)的加密可以使用des或md5等算法,我在矩阵学院里面应该放了这些加密算法的函数文件,对于常规的文本加密实际上可以将对应字符的acsii码值加上一个常数或者做一些其他的运算来做,这样很简单!当然把文本放到资源文件里面也是一个方法,虽然并没有加密,但是不能用常规方法读取资源文件,也可以起到一定的作用!</P>
作者: 小菜菜同学    时间: 2005-7-28 16:32
<>1、用加密算法是不是也能用记事本打开,但是看不懂,已经用一种算法替换了。程序读这个文本文件时,再转过来?</P>
  i* _% b( n: d6 S! m7 r/ ^3 D<>2、都说BCB和DELPHI很象,能不能说把BCB掌握得越好,DEPHI的能力就越好?虽然没学过DELPHI。Delphi和BCB比有什么优点吗?干嘛现在招聘,几乎没有要BCB的,[em03]除了VC就是JAVA,偶尔是Delphi。不过不管怎样,我想既然先学这个了,而且这个也挺好用,我就先把她学明白再说。[em04]</P>
, Q) Y# s  H+ s5 i<>3、是不是所有的用其他语言做的软件,用BCB也能做,就是有时候可能慢?</P>
作者: ilikenba    时间: 2005-7-28 16:51
<>1.你说的对,加密后的文件必须解密后才能正常浏览,否则就是一些乱码!</P>
8 w' q  O1 y* S, ^' I) ?* w<>2.Delphi和BCB确实很像,都是一个公司出的产品,都是RAD开发工具,二者具有几乎相同的控件!但是我还是觉得Delphi更适合开发大型产品,这在于它的语法结构比较严谨,这种严谨的结构会使得犯错误不太容易,大家都知道一个大的系统修补漏洞是一件很麻烦的事情!Java现在还是最热的,这得益于它的跨平台特性,这种特性在今天网络十分发达的情况下更加显出优势!但是可能未来.net会更加火!</P>
; X# P7 Q" u" m1 ~2 ^<>3.当然BCB什么都可以做,除了一些Windows底层的驱动,这些是因为微软排斥竞争对手而没有公开这部分的细节造成的。BCB得益于C++语言的良好性能,通常开发出来的产品不会慢!</P>
作者: 小菜菜同学    时间: 2005-7-28 17:02
<>.net是VC++.net?</P>
& i! e% F+ S5 t) M3 W<>那BCB到底有什么优点,别的开发工具不具备呢?他存活下来应该有几个比较大的优点吧?</P>
作者: ilikenba    时间: 2005-7-28 22:10
vc.net只是.net的开发语言之一,还有很多其他的开发语言,比如C#等,BCB最大的优势在于它的核心语言是C++,这个语言的使用人数是最多的,而且它是RAD开发语言,比VC开发效率高,在就是一些Borland公司的老用户使用起来比较熟悉!
作者: yirongshu    时间: 2005-8-16 20:19

作者: 矩阵中的小萝卜    时间: 2005-10-28 09:43
<>我的机器重装系统了,我现在能不能在不重装bcb的基础上,恢复它呢?</P>1 G& c: e+ z0 ^( v) i8 ~
<>我记得以前有个方法,把什么东西加到右键上,然后把bcb注册一下,bcb就又能用了。但是这次我在网上找了半天也没找到。各位大侠知道吗?</P>
作者: madio    时间: 2005-10-28 11:43
问了一些高手,他们都说这样要注册很多文件,不太可行!一般通常是要用一些ghost等工具做备份!




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5