home *** CD-ROM | disk | FTP | other *** search
/ C Programming Starter Kit 2.0 / SamsPublishing-CProgrammingStarterKit-v2.0-Win31.iso / bc45 / scrollba.pak / SCROLLBX.CPP < prev   
C/C++ Source or Header  |  1997-07-23  |  2KB  |  76 lines

  1. //----------------------------------------------------------------------------
  2. // ObjectWindows - (C) Copyright 1991, 1993 by Borland International
  3. //----------------------------------------------------------------------------
  4. #include <owl\owlpch.h>
  5. #include <owl\applicat.h>
  6. #include <owl\framewin.h>
  7. #include <owl\scrollba.h>
  8. #include <owl\static.h>
  9. #include <stdio.h>
  10.  
  11. const WORD ID_THERMOMETER = 201;
  12. const WORD ID_STATIC = 202;
  13.  
  14. class TTestWindow : public TWindow {
  15.   public:
  16.     TTestWindow();
  17.     
  18.   protected:
  19.     void SetupWindow();
  20.  
  21.     void EvThermometer(UINT code);
  22.  
  23.     TScrollBar* Thermometer;
  24.     TStatic*    Static;
  25.  
  26.   DECLARE_RESPONSE_TABLE(TTestWindow);
  27. };
  28.  
  29. DEFINE_RESPONSE_TABLE1(TTestWindow, TWindow)
  30.   EV_CHILD_NOTIFY_ALL_CODES(ID_THERMOMETER, EvThermometer),
  31. END_RESPONSE_TABLE;
  32.  
  33. TTestWindow::TTestWindow()
  34.   : TWindow(0, 0, 0)
  35. {
  36.   Attr.X = 20;
  37.   Attr.Y = 20;
  38.   Attr.W = 380;
  39.   Attr.H = 250;
  40.   Thermometer = new TScrollBar(this, ID_THERMOMETER, 100, 150, 180, 0, TRUE);
  41.   Static = new TStatic(this, ID_STATIC, "32 degrees", 135, 40, 160, 17, 0);
  42. }
  43.  
  44. void
  45. TTestWindow::SetupWindow()
  46. {
  47.   TWindow::SetupWindow();
  48.   Thermometer->SetRange(32, 120);
  49. }
  50.  
  51. void
  52. TTestWindow::EvThermometer(UINT /*code*/)
  53. {
  54.   char string[12];
  55.   sprintf(string, "%d%s", Thermometer->GetPosition(), " degrees");
  56.   Static->SetText(string);
  57. }
  58.  
  59. //----------------------------------------------------------------------------
  60.  
  61. class TTestApp : public TApplication {
  62.   public:
  63.     TTestApp() : TApplication() {}
  64.     void InitMainWindow() {
  65.       MainWindow = new TFrameWindow(0, "Thermostat", new TTestWindow, TRUE);
  66.       MainWindow->EnableKBHandler();
  67.     }
  68. };
  69.  
  70. int
  71. OwlMain(int /*argc*/, char* /*argv*/ [])
  72. {
  73.   TTestApp app;
  74.   return app.Run();
  75. }
  76.