小弟刚开始学习VC++,感觉跟以前接触的编程完全不同了…
用的是VS2008,感觉有点类似VB的。
Windows编程方法也摸索了一下,也感觉很多,MFC看不懂,太复杂了。
现在想学习它,需要一些小实例,不太难,可以一步一步照着做的,以便熟悉这种编程方法,也找不到……
我就想起以前有个程序,是按一下按钮,一个TextBox就变一下位置,所以在Click事件中写了这个:
 int x,y;
 x=Random();
 textBox1->Location->X=x;结果错误一大堆……1>------ 已启动生成: 项目: godmoon, 配置: Debug Win32 ------
1>正在编译...
1>godmoon.cpp
1>.\godmoon.cpp(6) : error C2143: 语法错误 : 缺少“;”(在“using”的前面)
1>e:\users\godmoon\documents\visual studio 2008\projects\godmoon\godmoon\Form1.h(104) : error C2440: “=”: 无法从“System::Random”转换为“int”
1>        没有可用于执行该转换的用户定义的转换运算符,或者无法调用该运算符
1>e:\users\godmoon\documents\visual studio 2008\projects\godmoon\godmoon\Form1.h(105) : error C2819: “System::Drawing::Point”类型没有重载成员“operator ->”
1>        c:\windows\microsoft.net\framework\v2.0.50727\system.drawing.dll : 参见“System::Drawing::Point”的声明
1>        是否要改用“.”?
1>e:\users\godmoon\documents\visual studio 2008\projects\godmoon\godmoon\Form1.h(105) : error C2232: “->System::Drawing::Point::X”: 左操作数有“class”类型,使用“.”
1>.\godmoon.cpp(19) : fatal error C1075: 与左侧的 大括号“{”(位于“e:\users\godmoon\documents\visual studio 2008\projects\godmoon\godmoon\Form1.h(2)”)匹配之前遇到文件结束
1>生成日志保存在“file://e:\Users\GodMoon\Documents\Visual Studio 2008\Projects\godmoon\godmoon\Debug\BuildLog.htm”
1>godmoon - 5 个错误,0 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========前面几个错误,缺少;的我也不知道是怎么回事,可能是代码弄乱了……可以华丽地无视了
重要的是这个错误:error C2440: “=”: 无法从“System::Random”转换为“int”
跨过这道坎,小弟感激不尽呀!~

解决方案 »

  1.   

    srand()  
      rand()  
       
      #include   <stdlib.h>  
      #include   <stdio.h>  
      #include   <time.h>  
       
      void   main(   void   )  
      {  
            int   i;  
       
            /*   Seed   the   random-number   generator   with   current   time   so   that  
              *   the   numbers   will   be   different   every   time   we   run.  
              */  
            srand(   (unsigned)time(   NULL   )   );  
       
            /*   Display   10   numbers.   */  
            for(   i   =   0;       i   <   10;i++   )  
                  printf(   "     %6d\n",   rand()   );  
      }   
      

  2.   

    可以试试BOOL SetWindowPos(
      HWND hWnd,             // handle to window
      HWND hWndInsertAfter,  // placement-order handle
      int X,                 // horizontal position
      int Y,                 // vertical position
      int cx,                // width
      int cy,                // height
      UINT uFlags            // window-positioning options
    );
    还有要判断下x=Random()的值
      

  3.   


    如果这样丢进去,还是没办法改变TextBox1的坐标值呀。
      

  4.   

    你直接用C语言的rand()函数,
    移动窗口用MoveWindow或者SetWindowPos 
      

  5.   

    在 Button 的 onclick 添加 SetWinowPos
    随机数可以用C\C++的rand函数取得